自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

爱和九九的博客

一个非常菜非常菜的小萌新

  • 博客(27)
  • 资源 (1)
  • 收藏
  • 关注

原创 OpenCV基础课程笔记21霍夫直线变换

写在前面霍夫直线变换理论小白易懂:https://www.bilibili.com/video/BV1bb411b7VQ?from=search&seid=13282514100449874212代码#include<iostream>#include<opencv2/opencv.hpp>#include<cmath>using namespace std;using namespace cv;int main() { Mat src =

2020-08-28 12:31:48 170

原创 OpenCV基础课程笔记27直方图反向映射

写在前面这个常用于模板匹配,但是到这一步其实听不懂的实在是太多了……反向投影博客(概念理解)https://blog.csdn.net/fengye2two/article/details/79113560OpenCV之mixChannels()函数使用说明https://www.cnblogs.com/ruic/archive/2015/10/31/4926254.html其实……我看了好多博客也没懂……特别是那个fromTo参数.代码#include<iostream>#

2020-08-28 12:30:42 232

原创 OpenCV基础课程笔记26直方图比较

写在前面☆ CV_COMP_BHATTACHARYYA 数值越小代表越接近 (巴适距离)☆ CV_COMP_CORREL 数值越大代表越接近 (相关性计算) CV_COMP_CHISQR 数值越小说明越接近(K²) CV_COMP_INTERSECT 十字交叉(老师不懂,我更不懂,先不求甚解 )这里只演示相关性计算,其他的就换对应参数即可。代码#include<iostream>#include<opencv2/opencv.hpp&gt

2020-08-28 12:28:12 473

原创 OpenCV基础课程笔记25直方图计算

写在前面这里贾志刚老师做绘制的Mat长宽弄反了……但是……他没看出来……东西都在注释里,不多说。代码#include<iostream>#include<opencv2/opencv.hpp>#include<cmath>#include<string>using namespace std;using namespace cv;int main() { Mat src = imread("A:\\专用\\TestForTheCV\\代

2020-08-28 12:11:18 164

原创 OpenCV基础课程笔记24直方图均衡化

代码#include<iostream>#include<opencv2/opencv.hpp>#include<cmath>using namespace std;using namespace cv;int main() { Mat src = imread("A:\\专用\\TestForTheCV\\代替女友出境.jpg"); Mat dst,gray_src; imshow("图片", src); cvtColor(src, gray_s

2020-08-28 12:06:36 167

原创 OpenCV基础课程笔记23像素重映射

写在前面这节内容里面的不管左右反转、上下翻转,还是旋转180度,都比较好理解,最难理解的是做小微原图的二分之一,这个我到现在仍有点蒙圈。贾志刚老师调程序调出来的右下是有夹缝的,然后弹幕里面有人说他这个写的有问题,于是我到处去搜博客。贾志刚老师在第一节课加上的0.5,博客里面有减去0.5,也有不加不减(贾志刚老师下节课认为不加不减才对)。我自己尝试发现减去0.25之后,能消掉夹缝,但是,也只是对于女友大粗腿下采样.jpg这一张图来说的,画了半天图,大致明白了,这个和像素有很大关系,加不加,加多少,这得

2020-08-28 12:03:58 179

原创 OpenCV基础课程笔记22霍夫圆变换

写在前面这里我其实准备了两张图,一张圆形交错的,一张T细胞在显微镜下呈现的景象,但是圆检测怎么调,都调不到满意的结果,不知道是什么参数不太合适。代码#include<iostream>#include<opencv2/opencv.hpp>#include<cmath>using namespace std;using namespace cv;int main() { Mat src = imread("A:\\专用\\TestForTheCV\\c

2020-08-28 11:54:38 157

原创 OpenCV基础课程笔记20canny边缘检测

写在前面有助于理解非最大信号抑制博客https://blog.csdn.net/qq_38906523/article/details/80195119?utm_medium=distribute.pc_aggpage_search_result.none-task-blog-2allfirst_rank_v2~rank_v25-7-80195119.nonecase&utm_term=%E6%9C%80%E5%A4%A7%E6%8A%91%E5%88%B6%E7%AE%97%E6%B3%95

2020-08-27 15:50:13 150

原创 OpenCV基础课程笔记19laplance算子

代码#include<iostream>#include<opencv2/opencv.hpp>#include<cmath>using namespace std;using namespace cv;int main() { Mat src = imread("A:\\专用\\TestForTheCV\\代替女友出境.jpg"); Mat dst; imshow("图片", src); Mat gray, edge; GaussianBlur

2020-08-27 15:32:18 128

原创 OpenCV基础课程笔记18Sobel算子详解

写在前面边缘:像素值发生跃迁的地方。可通过一阶导数求得delta=f(x)-f(x-1)delta越大,说明像素在x方向变化越大,边缘信号越强Sobel算子,称为一阶微分算子或者求导算子 (拉普拉斯为二阶)水平梯度Gx,垂直梯度Gy最终梯度: G=abs(Gx)+abs(Gy);G=pow(GxGx+GyGy,0.5);代码#include<iostream>#include<opencv2/opencv.hpp>#include<cmath>u

2020-08-27 15:21:13 439

原创 OpenCV基础课程笔记17卷积边缘处理

写在前面copyMakeBorder()其中,处理边缘的三种方式:BORDER_CONSTANT 指定像素填充BORDER_REPLICATE 已知像素(周围的像素)填充BORDER_WRAP 另一边的像素填充和贾志刚老师学的一个键盘事件,通过按键改变代码#include<iostream>#include<opencv2/opencv.hpp>#include<cmath>using namespace std;using namesp

2020-08-27 15:07:09 181

原创 OpenCV基础课程笔记16自定义线性滤波

代码#include<iostream>#include<opencv2/opencv.hpp>#include<cmath>using namespace std;using namespace cv;int main() { Mat src = imread("A:\\专用\\TestForTheCV\\class6丧尸.jpg"); Mat dst; imshow("图片", src); Mat xp, yp; //Sobel X方向 M

2020-08-27 14:53:30 99

原创 OpenCV基础课程笔记15基本阈值操作

写在前面阈值二值化操作肯定在灰度图像使用。阈值类型THRESH_BINARYTHRESH_BINARY_INV //取反THRESH_TRUNC 超过阈值的,等于阈值THRESH_TOZERO 小于阈值的,等于0THRESH_TOZERO_INV生成阈值方式THRESH_OTSUTHRESH_TRIANGLE代码#include<iostream>#include<opencv2/opencv.hpp>using namespace std;usin

2020-08-27 14:25:47 152

原创 OpenCV基础课程笔记14图像金字塔-上采样与下采样

写在前面这一段就不跑了哈……#include<iostream>#include<opencv2/opencv.hpp>using namespace std;using namespace cv;int main() { Mat src = imread("A:\\专用\\TestForTheCV\\女友大粗腿下采样.jpg"); imshow("图片", src); Mat dst; //上采样 pyrUp(src, dst, Size(src.col

2020-08-27 14:16:28 152

原创 OpenCV基础课程笔记13提取水平竖直线

写在前面一般提取水平竖直线都是相对于二值图像来说的,要先对原始图像二值化处理。代码只跑找到竖线的算法(横线换一个结构体就行了)代码#include<iostream>#include<opencv2/opencv.hpp>using namespace std;using namespace cv;int main() { Mat src = imread("A:\\专用\\TestForTheCV\\class13水平垂直线.jpg"); imshow("图片

2020-08-27 14:11:47 462

原创 OpenCV基础课程笔记12形态学操作

代码#include<iostream>#include<opencv2/opencv.hpp>using namespace std;using namespace cv;int main() { Mat src = imread("A:\\专用\\TestForTheCV\\class12开.png"); imshow("图片", src); Mat dst; //一般形态学操作针对的都是二值化后的图 //开操作 //先膨胀后腐蚀,去掉小块的对象 M

2020-08-27 13:40:32 127

原创 OpenCV基础课程笔记11腐蚀与膨胀

写在前面膨胀:高亮区域被膨胀了(dilate)腐蚀:高亮区域被腐蚀了(erode)代码#include<iostream>#include<opencv2/opencv.hpp>using namespace std;using namespace cv;int element_size = 3;int max_size = 51;Mat src = imread("A:\\专用\\TestForTheCV\\代替女友出境.jpg");Mat dst;vo

2020-08-27 13:38:14 137

原创 OpenCV基础课程10模糊图像(2)

代码#include<iostream>#include<opencv2/opencv.hpp>using namespace std;using namespace cv;int main() { Mat src = imread("A:\\专用\\TestForTheCV\\class10素颜女.jpg"); imshow("图片", src); Mat dst; //for (int i = 1; i <= 1000; i += 2) { // b

2020-08-26 22:37:30 126

原创 OpenCV基础课程笔记09模糊图像(1)

写在前面在这里把(1)(2)的所有关于模糊的笔记都记下来。均值滤波可以缩小像素,其实就是将像素区域的均值赋值给中心像素。blur()高斯滤波模糊图像,但是仍然保持原像素。GaussianBlur()中值滤波主要用来控制椒盐噪声medianBlur()双边模糊常用于美颜方面,祛除痘痘、雀斑啥的bilateralFilter()代码#include<iostream>#include<opencv2/opencv.hpp>using

2020-08-26 22:31:39 153

原创 OpenCV基础课程笔记08绘制图形和文字

代码#include<iostream>#include<opencv2/opencv.hpp>using namespace std;using namespace cv;//Mat src = imread("A:\\专用\\TestForTheCV\\女友44.jpg");Mat src = imread("A:\\专用\\TestForTheCV\\代替女友出境2.jpg");//imshow("图片", src);void MyLine() { Poi

2020-08-26 22:20:03 149

原创 OpenCV基础课程07调整图像亮度和对比度

写在前面公式 后来的图 = 原来的图 * α + β其中,α代表图像对比度,β代表亮度。其实就是很简单的对图像中每一个像素点做这个运算,代码中我演示了三通道RGB图像的写法,没有演示Gray的写法(因为我懒)。单通道处理一次就可以了,不用分数组元素012每个都处理而已。代码#include<iostream>#include<opencv2/opencv.hpp>using namespace std;using namespace cv;int main() {

2020-08-26 22:09:41 91

原创 OpenCV基础课程笔记06图像混合

写在前面注意,本博客图中有恐怖内容,请心脏脆弱者慎重查阅!代码#include<iostream>#include<opencv2/opencv.hpp>using namespace std;using namespace cv;int main() { Mat src1 = imread("A:\\专用\\TestForTheCV\\class6美女.jpg"); Mat src2 = imread("A:\\专用\\TestForTheCV\\class6丧

2020-08-26 22:03:52 86

原创 OpenCV基础课程笔记05图像操作

代码#include<iostream>#include<opencv2/opencv.hpp>using namespace std;using namespace cv;int main() { Mat src = imread("A:\\专用\\TestForTheCV\\代替女友出境.jpg"); imshow("图片", src); Mat gray_src; cvtColor(src, gray_src, CV_BGR2GRAY); imshow("

2020-08-26 22:01:04 114

原创 OpenCV基础课程笔记04Mat常用方法

代码#include<iostream>#include<opencv2/opencv.hpp>using namespace std;using namespace cv;int main() { Mat src = imread("A:专用\\TestForTheCV\\class4酷酷.jpg"); if (src.empty()) { cout << "No file!" << endl; } else { imshow("

2020-08-26 21:57:08 138

原创 OpenCV基础课程笔记03矩阵掩模操作

写在前面//upDBD = Mat::zeros(src.size(), src.type());返回一个置零的Mat对象//upDBD = Mat::eye(src.size(), src.type());返回一个对角线为白色,其他为黑色的Mat对象if(!mat.data) 如果无图被读入 (因为我懒,所以所有课程笔记都没有这个消除鲁棒性的代码哈哈哈)//output[col] = saturate_cast(5 * current[col] - (current[col - offset

2020-08-26 21:51:53 171

原创 OpenCV基础课程笔记02加载保存修改图像

写在前面这节课……水……讲了一些前言类似的吧,个人觉得没什么太重要的东西。代码#include <iostream> #include<opencv2\opencv.hpp> #include<opencv2\highgui\highgui.hpp>using namespace cv;int main() { Mat taeyeon = imread("A:专用\\TestForTheCV\\tae.jpg", IMREAD_GRAYSCALE

2020-08-26 21:44:06 99

原创 OpenCV基础课程笔记01预备课

写在前面这是笔者在学习贾志刚老师的OpenCV基础课的一些笔记,提供给个人以后在不同电脑查阅使用。因为给本人查看,所以并没有详细的注释。差最后几节课没学完,因为实在是学不懂了,另外要开学了,所以,暂时先将其他笔记发出来,剩下的学校去在学。图像处理太深奥了,涉及到好多数学理论。在学习时参考了大量CSDN博客,还有数字图像处理的相关课程。目前决定研究生走这个方向,学完这门课只是简单入门。课程预备笔记用到的图片其中基本所有的图片都是网图,女友的图片太过性感,不予展示。所有实验中我用女友照片做素材的,

2020-08-26 21:35:06 155

OS课程总结.pdf

2020 年秋操作系统课程学习总结 我喜欢申利民老师,他真的太棒了

2021-05-23

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除