HALCON示例程序vessel.hdev血管的分割与测量
生活随笔
收集整理的這篇文章主要介紹了
HALCON示例程序vessel.hdev血管的分割与测量
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
小哥哥小姐姐覺得有用點個贊唄!
HALCON示例程序vessel.hdev血管的分割與測量
示例程序源碼(加注釋)
- 關(guān)于顯示類函數(shù)解釋
dev_update_window (‘off’)
dev_close_window ()
dev_open_window (0, 0, 512, 512, ‘black’, WindowID)
set_display_font (WindowID, 14, ‘mono’, ‘true’, ‘false’)
read_image (Image, ‘vessel’)
dev_display (Image)
disp_continue_message (WindowID, ‘black’, ‘true’)
stop ()
dev_set_draw (‘fill’)
dev_set_color (‘green’)
dev_set_line_width (3) - 使用Laws紋理過濾器過濾圖像
texture_laws (Image, Texture, ‘el’, 2, 5)
dev_display (Texture)
disp_continue_message (WindowID, ‘black’, ‘true’)
stop ()
mean_image (Texture, Energy, 211, 61)
dev_display (Energy)
disp_continue_message (WindowID, ‘black’, ‘true’)
stop ()
dev_display (Image) - 使用二進制閾值分割圖像
binary_threshold (Energy, Vessel, ‘smooth_histo’, ‘dark’, UsedThreshold)
dev_display (Vessel)
disp_continue_message (WindowID, ‘black’, ‘true’)
stop ()
dev_set_draw (‘margin’) - 返回區(qū)域位置
get_region_contour (Vessel, VesselRows, VesselColumns) - 生成一個用點表示的區(qū)域
gen_region_points (VesselBoundary, VesselRows, VesselColumns)
dev_display (Image) - 實用矩形剪切區(qū)域
clip_region (VesselBoundary, Boundaries, 0, 2, 511, 509)
dev_display (Boundaries) - 求最小外接矩形
smallest_rectangle1 (Boundaries, UpperRow, Column1, LowerRow, Column2)
disp_continue_message (WindowID, ‘black’, ‘true’)
stop ()
Diameter := []
dev_set_color (‘red’)
dev_update_var (‘off’)
dev_update_time (‘off’)
dev_update_pc (‘off’)
dev_update_pc (‘on’)
dev_update_time (‘on’)
dev_update_var (‘on’)
Diameter := Diameter
meanDiameter := sum(Diameter) / |Diameter|
minDiameter := min(Diameter)
dev_set_color (‘green’)
dev_display (Image)
dev_display (Boundaries)
dev_set_color (‘yellow’)
get_image_size (Image, Width, Height)
- 獲取字符串空間的大小
get_string_extents (WindowID, 'meanDiam: ’ + meanDiameter + ', minDiameter: ’ + minDiameter, Ascent, Descent, TxtWidth, TxtHeight)
disp_message (WindowID, 'meanDiam: ’ + meanDiameter + ', minDiameter: ’ + minDiameter, ‘image’, (UpperRow + LowerRow) / 2, (Width - TxtWidth) / 2, ‘yellow’, ‘false’)
dev_set_draw (‘fill’)
dev_set_line_width (1)
dev_update_window (‘on’)
處理思路
這個例子是主要講解了血管的分割與測量。使用Laws紋理過濾器過濾圖像,使用二進制閾值分割圖像。
后記
大家有什么問題可以向我提問哈,我看到了第一時間回復(fù),希望在學(xué)習(xí)的路上多多結(jié)交良師益友。
總結(jié)
以上是生活随笔為你收集整理的HALCON示例程序vessel.hdev血管的分割与测量的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: imx8开发之~源码编译
- 下一篇: halcon rectangle1_do