对“Halcon视频教程第一章 第二节”的学习感悟

来源:互联网 发布:淘宝卖家违规扣分 编辑:程序博客网 时间:2024/05/17 06:58
这个例程是程序自带的程序,非常感谢826工作室—“Halcon视频教程第一章 第二节(初识Halcon程序)”的视频讲解,下面是我对于视频的理解以及部分课件资料的整理 
 程序名:clip.hdev: Orientation  of clips    //求出回形针的方向 
* 通过回形针颜色与背景的区别,求阈值,选定各个回形针的区域,进行标注,求方向和中心点,最后用箭头进行标注显示 
dev_update_window ('off')         //关闭窗口的更新 
read_image (Clip, 'clip')            //读取回形针图片 
get_image_size (Clip, Width, Height)  //获取图片长宽 
dev_close_window () 
dev_open_window (0, 0, Width/2, Height/2,'black', WindowID) 
dev_display (Clip) 
set_display_font (WindowID, 14, 'mono','true', 'false') 
disp_continue_message (WindowID, 'black','true')  //在屏幕的右下角显示点击运行继续设置 
stop ()                                                                     //true,文字是写在一个白色的盒子中
bin_threshold(Clip, Dark)  //对图像进行自动阈值,适合于背景偏白色,物体灰度高的图,            
                                        //读取图像的灰度直方图,并进行高斯滤波,自动选取阈值,输出的是区域Region
connection (Dark, Single)     //计算区域的连接组件,划分不同的连通域 
select_shape (Single, Selected, 'area','and', 5000, 10000)     //通过图像的面积特征,删选不同                                                                                                                                                                                           //的clip, 
dev_set_draw ('fill')       //定义区域填充模式输出,填满 
dev_set_colored (12)      //设置12个输出的颜色 
dev_display (Selected)      //在当前图形窗口显示图形对象 
disp_continue_message (WindowID, 'black','true')  //在屏幕的右下角显示点击运行继续 
stop () 
dev_display (Clip) 
dev_set_color ('green') 
dev_display (Selected) 
orientation_region (Selected, Phi)  //求出回形针的方向 
area_center (Selected, Area, Row, Column)  //回形针的中心地区,含面积和坐标阀面值 
dev_set_line_width (3) 
dev_set_draw ('margin')   //定义区域填充模式输出,边缘轮廓 
Length := 80 
for i := 0 to |Phi|-1 by 1    //Phi=13,13-1=12为回形针个数 
        dev_set_color ('blue')
       disp_arrow (WindowID, Row, Column, Row-Length*sin(Phi),Column+Length*cos(Phi), 4) 
      //在窗口显示箭头函数,在每个回形针中,显示蓝色的箭头。//Row, Column是箭头开始坐标,Row-Length*sin(Phi),        Column+Length*cos(        //Phi)是终点坐标,
      disp_message (WindowID,deg(Phi)$'3.1f'+' deg', 'image', Row, Column-100, 'black', 'false')        
endfor 
dev_update_window ('on') 
  
  
课件资料整理 
1、代码颜色分别表示: 
   绿色:注释 
   褐色:控制和开发算子 
   蓝色:图像获取和处理算子 
   浅蓝色:外部函数 
2、算子(图像数据输入:图像数据输出:控制输入:控制输出) 
         图像数据:图像数组和数据,例如regions,images和XLD 
Tuple:tuple是halcon特有的数据结构,可以存储大量不同类型的数据,可用于图形数据和控制变量。Tuple是halcon与外界程序数据交互的通道。 
3、图像区域Region: halcon很多操作都是针对region的 
         Region是一个图像的点集的集合,没有灰度值。类似于二值图像,它的大小不受图像大小的限制 
4、Halcon图像处理思想分为4步骤: 
         获取图像:光照条件和摄像头性能有关 
         预处理:去噪和去干扰 
         处理: 
         显示结果和清楚object 
         程序整体流程可参考F:\Program 
Files\MVTec\HALCON-10.0\doc\pdf\solution_guide 
5、图像的特征: 
         颜色特征:边缘、频谱、色彩、角点 
         形态学特征:轮廓、形状 
         纹理特征 
         空间特征
0 0