图像处理
文章平均质量分 57
基本原理以及一些实战
菊头蝙蝠
这个作者很懒,什么都没留下…
展开
-
Halcon 学习笔记十一:Halcon自定义算子封装
Halcon 学习笔记一、封装本地程序函数先随便写一段程序read_image (Image, lujin)threshold (Image, Region, 128, 255)dev_display (Image)dev_display (Region)选中代码,然后点击函数->创建新函数这边先给函数取名称然后类型可以选择本地程序函数(这样子只能在这个halcon程序中使用这个函数)如果选择库函数(那么在其他halcon程序中也可以使用,只不过后续添加库即原创 2021-11-11 15:14:29 · 1535 阅读 · 0 评论 -
Halcon 学习笔记九:MFC+halcon联合
Halcon 学习笔记、halcon导出cpp文件二、新建工程三、配置四、测试是否配置成功一、halcon导出cpp文件首先在halcon中,读取图片,获得图片宽高,打开窗口,显示图片(如果不调用,在c++中无法显示)read_image (Image, 'C:/Users/xuheding/Desktop/图片/5.png')get_image_size (Image, Width, Height)dev_open_window (0, 0, Width/2, Height/2, 'bla原创 2021-11-11 11:49:14 · 3855 阅读 · 3 评论 -
Halcon 学习笔记九:mlp训练学习实战颜色识别
Halcon 学习笔记* This example demonstrates a completeness check of colored game* pieces using MLP classification. The training and application* of the classifier is first shown on colored images and then on* gray images.* dev_update_off ()dev_close_w原创 2021-11-10 20:04:52 · 692 阅读 · 0 评论 -
Halcon 学习笔记八:颜色识别
Halcon 学习笔记一、图像处理需要的知识二、图像处理的预处理和分割过程二、颜色识别的方法三、例子一四、例子二五、例子三一、图像处理需要的知识1.图像处理基础(rgb(hsv),gray)2.图像灰度变换(scale_img)3.图像基础(emphasize)4.图像几何变换(仿射变换,极坐标变换)5.图像分割(blob分析、边缘检测、reduce_domain)6.图像的频域(fft_img)7.图像形态学8.图像复原9.运动图像10.图像配准(模板匹配)二、图像处理的预处原创 2021-11-10 19:35:36 · 6404 阅读 · 0 评论 -
Halcon 学习笔记七:文字识别案例
Halcon 学习笔记汉字识别刚开始和车牌识别是一样的流程1.几何校正 2.分割(每个文字)3.排序连通区域接下来是形成trf文件,字符图像和字符关联(相当于是数据集)注意区域、图像、xld数组是从索引1开始的但是字符数组是从0开始的,所以下面循环中是word[i-1], TrainFile是文件保存的路径注意trf是训练数据, omc表示训练好后的模型文件,可以用来预测还可以对数据进行增强(用OCR训练文件浏览器打开trf文件,生成样本变体)...原创 2021-11-10 15:16:09 · 740 阅读 · 0 评论 -
Halcon 学习笔记六:车牌识别案例
Halcon 学习笔记、一、可以打开这个例子,颜色HSV变换的例子二、车牌定位与识别可以看到车牌是歪的所以先要定位车牌的位置,然后方向转正,接着分割字符,最后识别字符最后识别的效果完整代码read_image (Image, 'C:/Users/xuheding/Desktop/图片/4.png')dev_close_window ()dev_open_window_fit_image (Image, 0, 0, -1, -1, WindowHandle)*拆通道dec原创 2021-11-09 21:24:02 · 1757 阅读 · 0 评论 -
Halcon 学习笔记五:几何定位+仿射变换+测量
Halcon 学习定位流程例子一例子二(药片的定位)例子三(充电宝定位)例子四(车牌定位)其他定位流程blob分析模板匹配 (仿射变换成标准的形状)识别例子一打开这个关于仿射变换的例子在窗口中画一个图形,左键画,右键确认draw_region (Region, WindowID)获得单位矩阵hom_mat2d_identity (HomMat2DIdentity)获得旋转矩阵hom_mat2d_rotate (HomMat2DIdentity, -0.3, 256, 25原创 2021-11-09 19:17:15 · 2663 阅读 · 0 评论 -
Halcon 学习笔记四:blobl分析案例
Halcon 学习一、blob分析例子二、预处理方法三、预处理的一些操作shape_trans算子解释一、blob分析例子目的是为了检测下图中的硬币由于没有摄像头,就使用图片的方式读取1.二值化2.开操作(去噪)opening_circle (Regions, RegionOpening, 3.5)3.填充(使得硬币中间没有缝隙)fill_up (RegionOpening, RegionFillUp)4.计算连通域connection (RegionFillUp, Conne原创 2021-11-09 15:06:10 · 745 阅读 · 0 评论 -
Halcon 学习笔记三:形态学
Halcon 学习笔记一、 形态学概念1.腐蚀2.膨胀3.开操作和闭操作4.图像处理一般流程二、三、其他性能评测器缩放窗口绘制ROI区域查看特征(特征检测)一、 形态学概念1.腐蚀2.膨胀3.开操作和闭操作开操作:先腐蚀后膨胀 (去噪)闭操作:先膨胀后腐蚀 (填充孔洞)4.图像处理一般流程采集->预处理->寻找特征->显示预处理:滤波、gray、scale…寻找特征: 形态学、blob分析…二、打开电路板的一个例子(ball.hdev)操作流程就是 二值化-原创 2021-11-08 22:23:50 · 1118 阅读 · 0 评论 -
Halcon 学习笔记二:简单blob分析
Halcon 学习笔记1、第一部分2、第二部分3、第5讲完整代码1、第一部分1.采集图片助手->Image Acquisition->自动接口检测->连接->实时如果要 更换颜色空间为灰色,那么就选择 颜色空间->gray再次点击连接->实时设置完后,可以在点击插入代码,就可以在光标处插入得到* Image Acquisition 01: Code generated by Image Acquisition 01open_framegrabber原创 2021-11-08 18:54:31 · 1199 阅读 · 3 评论 -
Halcon 学习笔记一:基本操作以及读取与保存图片
调试按F2重置程序执行按F1进入帮助界面按F7单步调试可视化->更新窗口->单步模式->总是这样每次在单步调试的时候,都会更新图像的显示如果设置从不,就不会没步都更新则需要dev_display(Image)去显示图像读取图像读取一张图片的方式1.文件->读取图像2.直接输入代码read_image (Image1, 'printer_chip/printer_chip_01')读取多张图片read_image (Images, ['razors1原创 2021-11-08 16:11:03 · 5981 阅读 · 0 评论 -
albumentations图像增强库使用简易流程
albumentations图像增强库使用简易流程1.安装2.例子3.注意点albumentations图像增强库文档链接具体细节看官方文档,写的比较清晰。下面仅为学习笔记。1.安装pip install -U albumentations2.例子#读取图片image = cv2.imread("...")#转为BGR转为RGBimage = cv2.cvtColor(img,cv2.COLOR_BGR2RGB)#定义pipelinetransform = A.Compose([原创 2021-06-27 19:30:38 · 834 阅读 · 2 评论 -
用图直观上理解梯度算子(一阶)与拉普拉斯算子(二阶)的区别,线检测与边缘检测的区别
梯度算子(一阶)与拉普拉斯算子(二阶)的区别下面都是针对上图进行处理取90度方向的梯度算子和拉普拉斯算子,以下为在空间域中的核拉普拉斯算子(二阶)[−12−1−12−1−12−1]\left[ \begin{matrix} -1& 2& -1\\ -1& 2& -1\\ -1& 2& -1\\\end{matrix} \right] ⎣⎡−1−1−1222−1−1−1⎦⎤梯度算子(一阶)[−101−101−101原创 2021-01-21 18:11:28 · 6704 阅读 · 0 评论 -
纹理分析方法:共生矩阵的计算
纹理分析方法:共生矩阵什么是共生矩阵共生矩阵的计算什么是共生矩阵共生矩阵的计算因为已知图片有0、1、2、3这4个像素级,因此共生矩阵大小为4*4先看角度在0方向上,d=1的共生矩阵结果。如何计算的呢?共生矩阵上每个值可以看作原图上该类型像素排列的数量因为[0,0]位于主对角线上,既要考虑从左向右,又要考虑从右向左。因此可以得到值为4。[0,1]不是位于主对角线上,只需要考虑从左向右(或者从右向左)一次。同理[0,2]只需要考虑从右向左(或者从左向右)一次。因此最后的结果为可原创 2021-01-20 16:19:06 · 5531 阅读 · 1 评论 -
区域边界跟踪(虫爬法)和目标邻域点边界跟踪法
目标邻域点边界跟踪法区域边界跟踪(虫爬法)目标邻域点边界跟踪法目标邻域点边界跟踪法一个例子区域边界跟踪(虫爬法)跟踪法一种像素聚类方法,某个种子像素开始在其邻域搜索符合某种类聚条件的像素不对图像每一点都独立地进行计算,结果依赖于以前处理过的点,计算是串行的黑白二值图像应用较多上图左上角为陷入陷阱的情况。目标邻域点边界跟踪法了解完它们的具体原理,那么来看一下如何进行目标邻域点边界跟踪法的目标邻域点边界跟踪法一个例子右侧可以看出,是按照领域逆时针的方向来查找目标点的先从1的原创 2021-01-20 15:49:39 · 1472 阅读 · 1 评论