开启左侧

OBJ轉ROI的方法

[复制链接]
tim0214 发表于 2019-8-20 14:31:57 | 显示全部楼层 |阅读模式
請問各位大大:

小弟遇到一個語法的問題,想請教各位:
  1. edges_sub_pix (GrayImage, HolesEdges, 'canny', 5, 50, 75)
  2. select_shape_xld (HolesEdges, Holes, ['circularity','area'], 'and', [0.6,4200], [1.0,5500])
  3. smallest_circle_xld (Holes, Holes_Row, Holes_Column, Holes_Radius)
  4. count_obj (Holes, Holes_Number)

  5. for I:=1 to Holes_Number by 1               
  6.      gen_circle (ROI_Holes, Holes_Row[I-1], Holes_Column[I-1], Holes_Radius[I-1]-2)
  7.      reduce_domain(Image1,ROI_Holes,CircleRegion)
  8.      #(省略)
  9. endfor
复制代码


原先是如上述的方式去做ROI分析.先找到標的物(Hole),然後再以標的物的中心為圓心半徑劃出個圓形ROI...
可是若該標的物非為圓型,則此法就不行,因為會畫到其他無須判別的區域...

  1. edges_sub_pix (GrayImage, HolesEdges, 'canny', 5, 50, 75)         
  2. select_shape_xld (HolesEdges, Holes, ['circularity','area'], 'and', [0.6,4200], [1.0,5500])
  3. smallest_circle_xld (Holes, Holes_Row, Holes_Column, Holes_Radius)        
  4. count_obj (Holes, Holes_Number)

  5. for I:=1 to Holes_Number by 1
  6.             select_obj (Holes, Hole, I)
  7.             reduce_domain(Image1,Hole,CircleRegion)
  8. (省略)
  9. endfor
复制代码

所以欲修正成上述的方式,選擇標的物為ROI區域,但是程式(reduce_domain)報錯,訊息如下:
(4052  Image data management: wrong object-ID)
應該是無法將OBJ轉成Region..
故請教各位大大,該如何轉換才得宜?
绝地武士 发表于 2019-8-20 14:44:10 | 显示全部楼层
你的holes全部都是xld contour,又不是region怎么能执行reduce_domain呢?
 楼主| tim0214 发表于 2019-8-20 17:36:27 | 显示全部楼层
绝地武士 发表于 2019-8-20 14:44
你的holes全部都是xld contour,又不是region怎么能执行reduce_domain呢?

所以我再想該怎麼轉..因為我的holes是不規則的形狀時,該如何轉化成region?因為我只想針對holes裡面的內容,去做分析。

我目前是將holes找出中心跟半徑,然後再用gen_circle的方式,劃出ROI區域,針對ROI區域去做分析!可是,如果holes是個不規則的圖形,那麼這方法就不適用了!
Criss 发表于 2019-8-21 11:14:23 | 显示全部楼层
可以异形的轮廓转区域就可以了,gen_region_contour_xld
 楼主| tim0214 发表于 2019-8-21 16:28:44 | 显示全部楼层
Criss 发表于 2019-8-21 11:14
可以异形的轮廓转区域就可以了,gen_region_contour_xld

感謝大大的教導,謝謝..{:1_358:}
shandongzhongji 发表于 2019-9-22 10:18:57 | 显示全部楼层
gen_region_contour_xld 学习了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表