Halcon算子:area_center和area_center_gray的區別

算子area_center(Regions : : : Area, Row, Column)這個地球人都知道;

算子area_center_gray(Regions, Image : : : Area, Row, Column

在灰度圖像中計算區域的面積和中心。該算子與算子area_center 類似,但與area_center對比,計算區域的面積和中心時需要把圖像的灰度值考慮進去。

圖像中具有灰度值g(r,c)的區域R面積A被定義爲:

                   ---

                 \
面積     A =     /   g(r,c) .
                 ---
             (r,c) in R

也可以理解算子area_center_gray中計算的面積爲“體積”;例如由算子area_center(Region,A_R,Row_R,Col_R)計算區域Region的面積,A_R爲計算的Region的面積,區域Region的灰度值爲Gray_R ,那麼area_center_gray算子中計算的面積("體積")A = A_R*Gray_R,A_R爲面積Gray_R灰度值爲高度。

Size := 512
Radius := 100
Gray_R := 100
gen_image_const (Image, 'byte', Size, Size)
gen_circle (Region, Size/2, Size/2, Radius)
*A_R = Radius*Radius*3.14159265
area_center (Region, A_R, Row_R, Col_R)
paint_region (Region, Image, ImageRegion, Gray_R, 'fill')
threshold (ImageRegion, Region1, 1, 255)
*Area_G = A_R*Gray_R 
area_center_gray (Region1, ImageRegion, Area_G, Row_G, Col_G)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章