請問各位前輩有關算面積與中心點的問題

![](upload://ekm3yUkVpx9yRp2Oc1K3CjKn5ta.gif)我是個初學者,剛拿到NI-VISION7.0的軟體但是英文版的找了各個書店卻沒找到教學書籍(只有LABVIEW的)

我想問的是如果我拿一張CCD照的圖片(圖上有物件和背景)要算出裡面物件的中心點在哪裡要怎麼用呢(不知道是否要先把圖裡的物件轉正?假如又換成別張圖則轉成Labview的執行檔不就又要重寫了?)?各位前輩是否能做個影像教學檔教教我這個初學者呢?非常的謝謝各位前輩

在NI Vision 7.0中,計算影像中某些區塊的面積及中心點,可以先將影像轉成二值化影像後,再使用particles analysis的vi,就可以自動完成這類型的分析!!!

[QUOTE=麟仔]在NI Vision 7.0中,計算影像中某些區塊的面積及中心點,可以先將影像轉成二值化影像後,再使用particles analysis的vi,就可以自動完成這類型的分析!!![/QUOTE]

對不起,我還是不太懂ㄟ,二值化是用Extract Color Planes這個嗎?還有我只想要圖中的一個物件的中心點位址而已(因為我一選擇擇個功能進入後就出現整個畫面有各種顏色的小點?),還有如果物件有角度要先轉正嗎?謝謝

no no no~二值畫不是用Extract Color Planes的vi,二值化必須使用Threshold的vi來完成....使用particles analysis的功能,不需要將物件角度轉正.....除非是使用在影像樣本比對或影像校正的場合才需要修正角度....至於您說可不可以只量測某區塊的面積與中心點....答案是肯定的!!!

你可以秀一下你的sample圖嗎??或許大家可以幫你擬定一套分析流程呢!!

謝謝您告訴我何為二值化,我剛剛用了便成上面的圖請問要如何才能找到他的中心點呢??謝謝

對了如果換成別的圖還要在重寫以次程式嗎??謝謝

你的Threshold 的範圍要設定你上圖中黑色的區域,再選擇particle analysis中的center x,y 與area(pixels)參數就可以獲得中心點與面積值!!!

前輩很抱歉我還是不懂因為我不知道要如何選取黑色部份?(我在Threshold祇能用框選整個四方形而已,做好後看不到中心點的標示啊,只有在下面出現一些數值而已)而且是所有的Area選項都要選嗎?謝謝

請跟我這樣做:

1.先將你的樣本圖檔做Threshold的動作(二值化),在GrayScale>>Threshold下,然後依據下圖(一)採用手動調整的方式....調整至如圖(二)所示即可!!!

====圖(一)====

![](upload://kTrckWTxkGGnEpUuYoxZL6wNU7D.gif)

====圖(二)====

![|208x185](upload://duoxTFktVaTYXGYRpMcfEyv7emv.gif)

2.選擇Binary(選單)>>Particle Analysis選項,並如下圖(三)所示按下"量測選擇"按鈕!!

====圖(三)====

![](upload://uHK8OkfKI8tJeSt7m59Wtjmm78u.gif)

3.如下圖(四)勾選中心點座標(x,y)與Area後,按下ok!!

====圖(四)====

![](upload://6MO7OuMQWPXE5bsrzGC1Fawoa2B.gif)

4.在vision 7.0的下方,就可以看見量測的結果....然後按下ok鍵加入角本中!!如下圖(五)所示!!!

====圖(五)====

![](upload://6sti0DmYB1QjrcTPiEqccqCFNyA.gif)

5.最後將規劃完成的腳本分析流程,轉成labview的程式,這樣就可以了!!!

==========Try it !!!============

抱歉還是不行耶,到圖二的地方它變成紅色和白色的耶?還有轉成Labview程式後開啟圖檔它卻沒沒顯示任何中心點記號在圖上?謝謝

以下程式您參考看看,我覺得中心點怪怪的,至於面積也需要做驗證

123_LV7.0.vi

補上Overlay Results.vi

Overlay_Results.vi

 

ancle38387.7461805556

我將我在vision 7.0中所做出來的結果轉成labview程式執行後....依據其參數所繪出來的點,的確就是影像區塊中的中心點位置....而面積值也的確為像素面積值!!!

![](upload://rfCmLzBsp0YjigKl3ee4Xu1Eov5.gif)

[QUOTE=麟仔]

我將我在vision 7.0中所做出來的結果轉成labview程式執行後....依據其參數所繪出來的點,的確就是影像區塊中的中心點位置....而面積值也的確為像素面積值!!!![](upload://aeTYlqEc1qXvs9Jv3ju6pnq9wZt.gif)

![](upload://rfCmLzBsp0YjigKl3ee4Xu1Eov5.gif)

[/QUOTE]

請問麟仔前輩...是否可以將你這程式上傳給我們看看...謝謝

 

各位前輩我做出來的怎麼會是這樣呢?我也是用7.0版的也照上面前輩教的還是變成這樣??

Benjamin38452.0497106481

[QUOTE=ancle]

以下程式您參考看看,我覺得中心點怪怪的,至於面積也需要做驗證

123_LV7.0.vi

補上Overlay Results.vi

Overlay_Results.vi

 

[/QUOTE]

抱歉無法開啟耶?我用的是7.0版的有差嗎?謝謝

[QUOTE=leolee]

各位前輩我做出來的怎麼會是這樣呢?我也是用7.0版的也照上面前輩教的還是變成這樣??

[/QUOTE]

你這樣做就對了啊......你的結果再加上Overlay的相關函式,就可以點出區塊中心點的位置了!!!![](upload://wh1Jr0invKZTARRL2Hqlvc8do63.gif)

Benjamin38452.050150463

抱歉請問前輩什麼是Overlay?是只上圖這個功能嗎?

明明在NI-Vision時有勾選前輩說的centerX,centerY,Area的選項轉成Labview後卻都沒顯示出來?我現在只知道如何顯示X,Y的座標Area還是不知道如何顯示出來還有圖上沒辦法顯示中心點的的圖案嗎?謝謝

前輩,雖然解決了Area但下面只剩下一個可以選不知道怎麼辦(難道真的要加上Centroid這個選項嗎?),還有在圖上怎麼顯示出中心點我還是不會?謝謝

1.在vision 7.0中,所有的區塊分析結果像是點,圓,矩形等只會以"數值"的方式來呈現.所以當你轉成labview的程式時,並不會出現這些結果.

2.如果要出現數值,文字,點,圓,矩形等結果於一張分析後的影像上,必須使用Overlay的函式.

3.overlay的函式就是用來完成上述功能的函式集,在vision 7.0中就有這些功能了.

4.particle analysis vi的輸入之1d陣列,可以指定欲量測數據的排列....但是有分為是以pixel為單位,或是以real-world units為單位...這也是你說不知道如何選擇部分的涵義....一般我是會用以pixel為單位,再依影像的實際情況來運算成實際的單位尺寸!! 不知道我這樣說,你了解嗎??

麟仔38388.9284490741

另外,你所採用的量測中心點的那個vi,不適用於你現在分析的場合.....除非你確定你的影像中永遠都只有一個particle,否則計算出來的中心點,將是"所有非零像素"所匯集出來的中心點.....且這個中心點只有一個.....如此將造成不正確的結果!!!