项目需求:
此项目halcon检测液位高度、水位深度,并显示。
素材如下:
检测后的效果如下:
Halcon全部代码如下:
**open_framegrabber ('DirectFile', 1, 1, 0, 0, 0, 0, 'default', -1, 'default', 'default', 'default', 'E:/V45.avi', 'default', -1, -1, AcqHandle)
* Code generated by Image Acquisition 01
open_framegrabber ('DirectFile', 1, 1, 0, 0, 0, 0,\
'default', 8, 'rgb', -1, 'false', '1.mpg', 'default', -1, -1, AcqHandle)
**open_framegrabber ('DirectFile', _, _, _, _, _, _, _, _, 'rgb', _1, _, 'E:/TDDOWNLOAD/bike.avi', _, _, _, AcqHandle)
get_framegrabber_param (AcqHandle, 'first_frame', Value0)
get_framegrabber_param (AcqHandle, 'last_frame', Value1)
get_framegrabber_param (AcqHandle, 'horizontal_resolution', Value2)
get_framegrabber_param (AcqHandle, 'vertical_resolution', Value3)
dev_open_window (0, 0, Value2, Value3, 'black', WindowHandle)
set_framegrabber_param (AcqHandle,'frame_number',Value0)
grab_image (Image, AcqHandle)
draw_rectangle1 (WindowHandle, Row12OUT, Column12OUT, Row21OUT, Column21OUT)
grab_image_start (AcqHandle, -1)
for i:= Value0 to Value1-1 by 1
set_framegrabber_param (AcqHandle,'frame_number', i)
grab_image (Image, AcqHandle)
** dev_display (Image)
dev_set_color ('red')
gen_rectangle1 (Rectangle, Row12OUT, Column12OUT, Row21OUT, Column21OUT)
reduce_domain (Image, Rectangle, ImageReduced1)
decompose3 (ImageReduced1, Red, Green, Blue)
trans_from_rgb (Red, Green, Blue, Hue, Saturation, Intensity, 'hsv')
threshold (Saturation, HighSaturation, 100, 255)
reduce_domain (Hue, HighSaturation, HueHighSaturation)
threshold (HueHighSaturation, Yellow, 20, 100)
connection (Yellow, ConnectedRegions)
select_shape_std (ConnectedRegions, SelectedRegions, 'max_area', 0)
closing_circle (SelectedRegions, Yellow, 3.5)
smallest_rectangle1 (Yellow, Row11, Column11, Row2, Column2)
smallest_rectangle2 (Yellow, Row, Column, Phi, Length1, Length2)
gen_region_line (RegionLines, Row11,Column11, Row11, Column11+Length2*2)
dev_set_line_width (3)
gen_contour_region_xld (Yellow, Contours, 'border')
reduce_domain (ImageReduced1, Yellow, ImageReduced)
smallest_rectangle2 (Yellow, Row1, Column1, Phi1, Length11, Length21)
dev_display (HueHighSaturation)
dev_display (ImageReduced)
dev_set_line_width (3)
dev_set_color ('blue')
dev_display (RegionLines)
disp_message (WindowHandle,Row1, 'window', 200, 200, 'green', 'false')
endfor
close_framegrabber (AcqHandle)
扩视项目详细视频如下:
点击》》》》》观看此项目详细视频,学习快速项目开发思想套路。