图像算法与实战
以应用与实战为导向,深入各领域图像处理算法,掌握图像算法与数学基础,快速进阶系统算法思维,提升工程落地效率,塑造独立思维能力。
进击的CV
一起聊聊图像处理
展开
-
图形算法与实战:6.图像运动专题(5)图像旋转-基于近邻插值的图像旋转
图像运动专题-图像旋转-基于近邻插值的图像旋转目录图像运动专题-图像旋转-基于近邻插值的图像旋转1. 图像处理前后结果展示图像处理前图像处理后图像处理后2.图像旋转原理3.3.代码展示1. 图像处理前后结果展示图像处理前图像处理后图像处理后2.图像旋转原理基于近邻插值的图像旋转可以保证旋转后的图像内每个像素点都对应原图中的相应位置,而不会出现有黑点存在的情况。上一篇文章介绍了图像的几何旋转,是计算原图中每个像素点旋转后的位置,将原图中的原创 2020-06-28 22:18:05 · 849 阅读 · 0 评论 -
图形算法与实战:6.图像运动专题(5)图像旋转-常规旋转
图像运动专题-图像旋转-常规旋转1. 图像处理前后结果展示图像处理前图1图像处理后1图2图像处理后2图3图像处理后3图32.图像旋转原理使用了两种形式实现图像绕原点进行旋转,首先是使用opencv自身的方法进行图像旋转;其次是自己写的几何方法:不改变图像尺寸和改变图像尺寸。旋转一般是指将图像围绕某一指定点旋转一定的角度,图像旋转后会有一部分图像转出显示区域,可以截去那部分,也可以改变图像的尺寸使得图像显示完全。如下图,点P...原创 2020-06-28 21:09:16 · 568 阅读 · 0 评论 -
图形算法与实战:6.图像运动专题(4)图像转置
图像运动专题-图像转置目录图像运动专题-图像转置1. 图像处理前后结果展示图像处理前图像处理后2.几何平移原理3.代码展示1. 图像处理前后结果展示图像处理前图像处理后2.几何平移原理一幅图像的转置是指将图像像素的x坐标和y坐标互换,相应的转置后图像的宽度与长度会随之互换。图像转置指的是将图像像素的x坐标和y坐标进行互换,其变换的公式可用如下的形式表示:转置变换的坐标图如下图所示,...原创 2020-06-28 20:16:11 · 1056 阅读 · 0 评论 -
图形算法与实战:6.图像运动专题(3)图像缩放
图像运动专题-图像缩放1. 图像处理前后结果展示图像处理前图像处理后2.图像缩放原理本实例是利用opencv中的resize函数实现一幅图像的缩放。图像的缩放可以是按照原图像的比例进行缩放,也可以用户来指定缩放的大小。图像的缩放包括将图像放大和缩小两种情况。对于图像缩小,缩放后图像的像素点数目减少,原先的几个像素点缩放后用一个像素点表示。对于原图的局部区域可以使用区域内某一个像素点的值来代表这个局部区域缩放后的像素值,也可以使用局部区域内的像素点加权求平均得到的值来表示缩放后原创 2020-06-28 20:03:55 · 340 阅读 · 0 评论 -
图像运动专题-6.图像运动专题(2)镜像专题
图像运动专题-镜像专题1.图像处理前后结果展示图像处理前图像处理后水平镜像垂直镜像2.镜像原理用opencv实现图像的水平镜像和竖直镜像,可以事先确定中轴线,也可以不使用中轴线进行变换。图像镜像变换分为水平镜像和竖直镜像。水平镜像是将图像左半部分和右半部分以图像竖直中轴线为中心轴进行兑换;而竖直镜像是将上半部分和下半部分以图像水平中轴线为中心轴进行兑换,如下图所示,下面对代码展示中的代码进行进一步说明。需要注意的是,图像中点的坐标是从0开始的,在.原创 2020-06-27 14:01:22 · 499 阅读 · 0 评论 -
图形算法与实战:6.图像运动专题(1)几何平移
图像运动专题-平动目录图像运动专题-平动1. 图像处理前后结果展示图像处理前图像处理前2.图像平动原理3.代码展示1. 图像处理前后结果展示图像处理前图像处理前2.图像平动原理通过opencv实现图像的几何平移,直接改变图像指定像素点的RGB值,使用的方法是将偏移前的像素点的RGB值赋给偏移后的像素点,在偏移量内的像素点的RGB值置为0,超出图像显示区域的点直接丢弃。图像的几何平移包括水平平移和垂直平移,这里实现的是水平与垂直两个方向都进行平移,其原创 2020-06-25 18:00:53 · 587 阅读 · 2 评论 -
图形算法与实战:5.图像边缘羽化专题(2)腐蚀渐层方法羽化
我记得有种猫咪的毛发特征分类是金渐层,还是狗来着?记大不清了。图像羽化专题-腐蚀渐层方法羽化1. 图像处理前后结果展示图像处理前图像处理后2. 腐蚀渐层羽化腐蚀渐层羽化方法,本质是不同腐蚀图像的加权和。可使用相同权值,以不同大小的内核腐蚀,并叠加10次,权值为0.1;以不同大小的内核腐蚀,并叠加5次,权值为0.2;以不同大小的内核腐蚀并叠加4次,权值为0.25。以腐蚀10次,并叠加10次为例。因为腐蚀内核大小不同,腐蚀程度不同,原图中每个泡泡的直径就不同,因为腐蚀了10次原创 2020-06-24 23:23:11 · 1010 阅读 · 0 评论 -
图形算法与实战:3.图像最大连通域
关于连通域,来自百度百科的解释 复平面上的一个区域G,如果在其中任做一条简单闭曲线,而闭曲线的内部总属于G,就称G为单连通区域。一个区域如果不是单连通区域,就称为多连通区域。处理前后的图像展示 处理前,是具有不同连通域的图像 处理后,是具有单连通域的图像代码展示//C++风格寻找最大连通域#include <opencv2/opencv.hpp>#include <opencv2/core.hpp>...原创 2020-06-21 14:30:04 · 2831 阅读 · 0 评论 -
图形算法与实战:2.分割专题 (1) 阈值分割
1 阈值分割目录1 阈值分割1.1 处理效果展示处理前处理后1.2 原理1.3 代码展示1.1 处理效果展示处理前处理后1.2 原理1.3 代码展示原创 2020-06-16 14:25:02 · 421 阅读 · 0 评论 -
图形算法与实战:1.滤波专题 (6)频域滤波
6频域滤波目录6频域滤波6.1 处理效果展示6.2 原理6.3 代码展示6.1 处理效果展示原图 三通道彩色图像原图 单通道灰度图像原图 添加了规律噪声双边滤波(几乎没有起到任何效果)高斯滤波(有效果,但是效果微弱)均值滤波(有效果,但是效果微弱)中值滤波(有效果,但是效果微弱)傅里叶变换后的频谱图像在频域内,进行高频滤波频域滤波结果,效果较显著6.2 原理6.3 代码展示#inclu...原创 2020-06-15 00:57:36 · 616 阅读 · 0 评论 -
图形算法与实战:1.滤波专题 (5)双边滤波
5双边滤波5.1 处理效果展示图像处理前后对比1处理前处理后处理前处理后图像处理前后对比25.2 原理5.3 代码展示#include "opencv2/core/core.hpp"#include "opencv2/highgui/highgui.hpp"#include "opencv2/imgproc/imgproc.hpp"using namespace cv;int main(){ // 载入原图 Mat ima...原创 2020-06-15 00:45:08 · 479 阅读 · 0 评论 -
图形算法与实战:1.滤波专题 (4)各向异性扩散滤波
4. 各向异性扩散滤波目录4. 各向异性扩散滤波4.1 处理效果展示图像处理前后对比4.2 各向异性扩散滤波原理4.2.1 概念4.2.2 原理4.3 代码展示4.1 处理效果展示图像处理前后对比处理前处理后4.2 各向异性扩散滤波原理4.2.1 概念各向异性扩散滤波(Anisotropic Filter),同中值滤波、高斯滤波一样,也是一种滤除图像噪音的方法。可以用于边缘检测或提取之前的预处理,去除无关噪声,增加边缘的有效性。某些基于各.原创 2020-06-15 00:37:51 · 4432 阅读 · 0 评论 -
图形算法与实战:1.滤波专题 (3)高斯滤波
3 高斯滤波3.1 处理效果展示图像处理前后对比1图1 原图图2 高斯噪声处理后的图像图3 高斯滤波处理后的图像图像处理前后对比1图4 原图像2图5 高斯噪声处理过的图像图6 高斯滤波算法处理过的图像3.2 高斯滤波方法原理3.3 代码展示//给图像添加高斯噪声#include <cmath>#include <limits>#include <cstdlib>#include ..原创 2020-06-14 16:13:28 · 1631 阅读 · 0 评论 -
图形算法与实战:1.滤波专题 (2)中值滤波
1.1 处理效果展示图像处理前后对比1图1 原图图2 椒盐噪声处理图图3 对椒盐噪声图像用中值滤波处理图4 原图图5 用椒盐噪声处理后的图像图6对椒盐噪声图像用中值滤波处理...原创 2020-06-12 21:42:35 · 3593 阅读 · 0 评论 -
图形算法与实战:1.滤波专题 (1)均值滤波
1.均值滤波1.1 处理效果展示图像处理前后对比1图像处理前后对比21.2 滤波算法原理1.3 代码分享1.1 处理效果展示图像处理前后对比1图像处理前后对比21.2 滤波算法原理均值滤波算法,是与去除图像噪声有关的算法。图像噪声在图像上的表现为多余的、破坏性的点、线或者区域,噪声的存在对原始图像噪声了干扰或者破坏,因此去除图像噪声具有重要的意义。上图为3×3的内核(也可看做窗口,或者模版)。该内核包含了9个点及对应像素值。在对该区域进行滤波过程为:对P1~P9九个像素的灰度值求平均,代原创 2020-06-12 16:50:03 · 1881 阅读 · 0 评论