数字图像处理
言寺之风雅颂
这个作者很懒,什么都没留下…
展开
-
图像增强之直方图均衡化(不用histeq)与直方图规定化
前些天数字图像处理课上老师留了一个作业,要求自选一副图像对其做直方图均衡化处理,然后对图像进行灰度变换,使变换后的图像大致具有下图所示归一化直方图的趋势,并绘制直方图。histeq 是MATLAB里面直方图均衡化的函数,这里我们不用它手动实现直方图均衡化,以加深对图像直方图均衡化操作的理解。我们还是先使用histeq来写一下直方图均衡化的程序,然后跑一下看看结果:I = imread...原创 2018-04-03 16:19:51 · 20591 阅读 · 3 评论 -
OpenCV之kNN
kNN就是k-Nearest Neighbour,属于比较简单的监督分类方法。说白了就是预测对象的最近的k个邻居进行投票,哪种多就属于哪一类。一般就是拿欧式距离来判断远近,k值一般为奇数个,改进的kNN还会对远近不同的邻居设置不同的投票权重,进而得到更准确的结果。虽然手动实现也比较简单,OpenCV中ml库里已有提供的KNearest_create(),直接拿来玩一玩。这里用的是二维...原创 2019-06-17 16:54:42 · 763 阅读 · 0 评论 -
OpenCV之kmeans聚类(图像分割)
kmeans聚类是一个高效的非监督聚类方法,我们先来看看基本原理是什么。1.如果给一堆点进行二分类问题,在已有数据中随机抽取两个点或者随机新建两个点,分别记为A、B类重心。2.计算每一个点到这两个点的距离,将其标记为距离A、B中心较近的那一类,给所有点完成分类。3.计算A类点和B类点的新重心。4.重复2、3步骤,再次给所有点进行分类,分类后更新重心点。直到满足迭代停止条件。迭代...原创 2019-06-18 10:04:44 · 2704 阅读 · 0 评论 -
基于贝叶斯的图像分割
研一上学期学习了模式识别课程,老师讲的不错,也确实学到了些知识,我非常享受搞懂一个知识点之后的乐趣。老师一共留了两个作业,一个作业是基于贝叶斯的图像分类,一个是利用SVM进行图像分类。在此呈现给大家。老师要求:已知来自于两类的像素灰度值和颜色rgb值,对新的一副图像中的Nemo鱼的像素点进行分割,采用基于贝叶斯决策的方法。贝叶斯公式大家都很熟悉了吧,要用它来做图像分类怎么实现呢?显然这是监...原创 2018-04-04 12:12:52 · 8160 阅读 · 11 评论 -
MATLAB读RGB888数据显示图片
可以从这儿得到RGB888二进制数据,然后可以使用下面的代码来查看数据并显示图片。clear all;[FileName,PathName] = uigetfile('*','All Image Files','Select the image'); fidin=fopen([PathName FileName],'rb');while ~feof(fidin) ...原创 2019-01-19 11:26:14 · 1929 阅读 · 2 评论 -
图像分割标签制作软件
在做一个图像语义分割的项目。因为项目需要,得处理大量采集的图片数据,很多图片背景和前景难以区分,只有人工交互标注,所以编写了一个简单的交互标注软件。只能标注两类,可以撤销10次,可以设置工作半径和颜色阈值,用了简单的颜色距离判断,当然你可以在我的基础上更改代码,使用区域生长法等其他方法。本软件对于块分区明显的图片比较容易标注,但对于我自己项目的图片还是不太行,我也在改进方法,下一版本的要使用超...原创 2019-01-19 11:02:55 · 1901 阅读 · 1 评论 -
RGB565转RGB888原理 (MATLAB代码)
项目里用了OV2640摄像头,传感器采集了数据后是以RGB565的形式存在的,后面还要对其做数据处理才能还原原彩色图像,那么什么是RGB565,什么是RGB888呢?来看图。这下明白了吗?就是拆开原来的16位数据,分成3个通道的8位数据,可见RGB565转RGB888不会有数据损失,而RGB888转RGB565会丢失色彩信息。我的ppt里右边核心代码是C++的,完整C++带函数的代码去这...原创 2019-01-03 11:43:40 · 3807 阅读 · 4 评论 -
RGB565转RGB888 (C读写二进制文件)
核心代码是RGB565转RGB888,整段代码实现的功能是读取一个RGB565的二进制文件,将其转换为RGB888,然后写成一个二进制文件。要跑代码的去这里下载RGB565的二进制文件样例。RGB565转RGB888的原理看这儿https://blog.csdn.net/macunshi/article/details/85683707该样例是1600*1200的图片数据,所以RGB...原创 2019-01-03 22:05:02 · 3737 阅读 · 1 评论 -
直方图规定化计算过程
书接上回,上一篇讲了直方图均衡化的原理,我们继续讲一下直方图规定化的原理,在看这一篇之前请先看那一篇文章。直方图均衡化计算过程:https://blog.csdn.net/macunshi/article/details/79815870要想对图像进行直方图规定化处理,我们需要有逆向的思维,因为在计算的过程中总是操作像素进行灰度映射转换,问题就在于这个灰度映射关系怎么得到。我们用R代表...原创 2018-04-04 16:33:32 · 36367 阅读 · 15 评论 -
直方图均衡化计算过程
我写了一篇关于直方图均衡化和直方图规定化的文章,直接push了代码和实验结果,没有讲原理。想看那篇文章请点击下面:https://blog.csdn.net/macunshi/article/details/79804547这里我们尽量不用数学符号公式等,而用简单易懂的方式来把直方图均衡化的原理讲一下。其过程可以用下面一个表来展示: 是不是看不懂了?没关系,我们一点点来。(...原创 2018-04-04 13:03:21 · 56182 阅读 · 22 评论 -
图像插值(最近邻插值法 和 双线性插值法)
所谓近朱者赤近墨者黑,无论什么插值方法根本思想都是一样的。先讲一下最近邻插值法,就是找到未知像素点相邻的4个已知像素点,然后判断哪一个像素离着未知像素点近,就让那个点同化未知像素点,赋予未知点同样的像素值。当然你会说,我们还不知道怎么把小图上的点放置到大图上的位置上去,而且两图不成比例的话更不好放置了,那又怎么去寻找位置点以及未知点周围的点呢?而且边缘的点还未必能够找的到4个邻居。但是...原创 2019-07-02 22:46:07 · 5386 阅读 · 0 评论