OpenCV
OpenCV入门文章
Leonwenbin
人类究竟是什么存在?
展开
-
给图像添加随机噪声python实现
代码如下,简洁明了import cv2import randomimg = cv2.imread('1.jpg', 1)imgInfo = img.shapeheight = imgInfo[0] - 1 # 防止越界width = imgInfo[1] - 1temp = 500 # 噪声点的个数for i in range(0, temp): if random...原创 2019-10-15 18:51:46 · 6403 阅读 · 3 评论 -
Opencv入门——在python环境下调用电脑摄像头并保存视频
测试环境:win10 Python-3.7.1 opencv-3.4.2话不多说,直接上代码:# 导入opencv和numpy的库文件import cv2import numpy as np# VideoCapture()用来捕获视频设备的ID,device = 0表示只有一个摄像头device = 0cap = cv2.VideoCapture(device)# fou...原创 2018-11-25 15:47:42 · 2306 阅读 · 3 评论 -
OpenCV——入门,,猫脸检测
直接上代码#include<iostream>#include<opencv.hpp>using namespace cv;using namespace std;String HarrFile = "D:\\OpenCV\\OpencvNewBuild\\install\\etc\\haarcascades\\haarcascade_frontalcat...原创 2018-12-18 23:34:43 · 258 阅读 · 1 评论 -
OpenCV—入门,手动实现图像的放大与缩小
操作环境:VS2017PRO OpenCV-4.0 老规矩,直接上代码吧#include<iostream>#include<opencv.hpp>using namespace cv;using namespace std;const char *INPUT = "input image";const char *OUTPUT = "output ...原创 2018-12-17 22:55:14 · 1949 阅读 · 0 评论 -
Opencv入门——通用形态学操作函数morphologyEx()
void cv::morphologyEx( cv::InputArray src, cv::outputArray dst, int op, cv::InputArray element, cv::Point anchor = cv::Point(-1,-1), int...原创 2018-12-10 17:39:01 · 1109 阅读 · 0 评论 -
Opencv入门——膨胀与腐蚀
自定义形态学核函数cv::getStructuringELement( int shape, cv::size ksize, cv::Point anchor = cv::Point(-1,-1));测试代码#include<iostream>#include<opencv.hpp>using nam...原创 2018-12-10 17:17:18 · 190 阅读 · 0 评论 -
Opencv入门——图像模糊算法总结
先上代码#include<iostream>#include<opencv.hpp>using namespace cv;using namespace std;Mat img, img_gray, line_img, Gauss_img, median_img, bilateralFilter_img;int main(int argc, char ...原创 2018-12-10 14:10:51 · 3959 阅读 · 0 评论 -
LNK1104 无法打开文件“python37_d.lib” 解决办法
在解决这个问题之前,请先确保你安装了python的debug版本,如果没有,可以修改已经安装的python,如下图所示勾选最后一项,然后install然后,解决方法很简单,给如下图所示的项目添加python37_d.lib所在的路径即可 以下这两个操作必不可少!1、将python37_d.lib所在文件夹的路径添加到库目录里面2、然后在附加依赖项中添加pyt...原创 2018-12-09 22:30:53 · 29131 阅读 · 36 评论 -
OpenCV入门——实现KMeans算法
直接上代码//无监督的学习方法#include<iostream>#include<opencv2_new/opencv.hpp>using namespace cv;using namespace std;int main(int, void*){ Mat img(500, 500, CV_8UC3); RNG rng(12345); Sca...原创 2018-12-20 00:00:14 · 529 阅读 · 0 评论 -
Opencv入门——添加文字、绘制线段和几何图形等
Point表示一个2D平面的点(x, y)用法:Point p;p.x = 20;p.y = 10;//或者p = Point(20, 10);Scalar表示四个元素的向量int b = 123;int g = 45;int r = 89;Scalar color = Scalar(b, g, r);画线和各种图形cv::line (LINE_4\LI...原创 2018-12-04 00:55:48 · 674 阅读 · 0 评论 -
Opencv入门——图像的亮度与对比度的调整
原理公式:原创 2018-12-03 23:30:39 · 227 阅读 · 0 评论 -
OpenCV入门——阈值的检测与确定
直接上代码当将THRESH_BINARY修改为THRESH_OTSU时,算法会自动确定阈值的大小,TrackBar失去作用... :)#include<iostream>#include<opencv.hpp>using namespace cv;using namespace std;int threshold_value = 120;int th...原创 2018-12-13 00:52:29 · 1959 阅读 · 1 评论 -
OpenCV入门——图像的放大和缩小
直接上代码#include<iostream>#include<opencv.hpp>using namespace cv;using namespace std;int main(){ Mat img, dst_up, dst_down; char INPUT[] = "input"; char OUTPUT[] = "output"; cha...原创 2018-12-13 00:36:58 · 1477 阅读 · 0 评论 -
OpenCV入门——直线检测并消除
很简单,代码如下#include<iostream>#include<opencv.hpp>using namespace cv;using namespace std;int main(){ Mat img, dst, img_gary, img_bin, temp, r_line, c_line, kernel; char INPUT[] = "...原创 2018-12-13 00:27:13 · 7817 阅读 · 6 评论 -
基于Opencv的图象融合方法
开发平台:VS2017 Opencv-4.0直接上代码,很简单的:#include<iostream>#include<opencv2/opencv.hpp>using namespace cv;using namespace std;int main(){ Mat src1, src2, dst; src1 = imread("C:\\1.jp...原创 2018-12-02 01:39:30 · 356 阅读 · 2 评论 -
Opencv入门——打开一张图片的方法
直接上代码#include<iostream>#include<opencv2/core/core.hpp>#include<opencv2/highgui/highgui.hpp>using namespace cv;int main(){ Mat img = imread("D:/exmaple.jpg"); //读取图像 nam...原创 2018-11-30 20:17:29 · 2126 阅读 · 0 评论 -
Opencv入门——读写图像、读写像素、修改像素值
读写图像imread()可以指定加载图像为灰度图或者RGB格式 imwrite()保存图像文件,类型由扩展名决定读写像素读写一个GRAY像素点的像素值(CV_8UC1)gray = gray_img.at<uchar>(row, col);读取一个RGB图像的像素点的像素值int b = img.at<Vec3b>(row, col)[0];int...原创 2018-12-03 01:11:22 · 4516 阅读 · 2 评论 -
Opencv入门——【掩膜操作】之修改图像的对比度的两种方法
掩膜操作的原理矩阵的掩膜操作十分简单,根据掩膜来计算每个像素的像素值,掩膜(Mask)也成为Kernal 计算公式:F(i, j) = 5*F(i, j) - (F(i - 1, j) + F(i + 1, j) + F(i, j - 1) + F(i, j + 1))第一种,自己定义函数实现:Mat.ptr<uchar>(int i=0) 获取像素矩阵的指针,索引i表...原创 2018-12-02 18:14:27 · 424 阅读 · 0 评论 -
Opencv入门——图像的加载、显示、修改、保存
开发环境:Opencv-4.0 VS20171、加载图像(cv::imread)imread()功能是加载图像文件成为一个Mat对象,第一个参数表示图像的文件名称,第二个参数表示加载的图象的类型 IMERAD_UNCHANGED(<0)表示加载原图,不做任何改变 IMREAD_GRAYSCALE(0)表示把原图作为灰度图加载进来 IMREAD_CLOOR(>0)表示把原图...原创 2018-12-02 16:59:10 · 637 阅读 · 0 评论