1 不同色彩空间的转换 opencv 中有数百种关于不同色彩空间的转换方法,但常用的有三种色彩空间:灰度.BRG.HSV(Hue-Saturation-Value) 灰度 - 灰度色彩空间是通过去除彩色信息来将其转换成灰阶,灰度色彩空间对中间处理特别有效,比如人脸检测 BGR - 蓝-绿-红 彩色空间,每个像素点都由一个三元数组来表示,分别代表蓝-绿-红三种颜色. HSV,Hue 表示色调,Saturation 表示饱和度,Value 表示黑暗的程度. 2 傅里叶变换 傅里叶变换的概念是许多常见…
OpenCV提供了resize函数来改变图像的大小,函数原型如下: , , int interpolation=INTER_LINEAR ); 参数解释: src:输入,原图像,即待改变大小的图像: dst:输出,改变大小之后的图像,这个图像和原图像具有相同的内容,只是大小和原图像不一样而已: dsize:输出图像的大小.如果这个参数不为0,那么就代表将原图像缩放到这个Size(width,height)指定的大小:如果这个参数为0,那么原图像缩放之后的大小就要通过下面的公式来计算: dsize…
本次学习是基于Window10进行的.语言为python3. 1 与opencv相关的库简介 1.1 numpy numpy 是 OpenCV 绑定 python 时所依赖的库,此意味着numpy在安装opencv前必须安装的库. numpy是提供数值计算函数,这种工具可用来储存和处理大型矩阵,具有高效的矩阵(matrix)计算函数,其比python自身的嵌套列表(nested list structure)结构要高效的多. 1.2 SciPy 该库是一个与numpy 密切相关的科学计算库.虽然…
一,OpenCV OpenCV官方网站:http://opencv.org/  OpenCV目前最新代码库地址:https://github.com/itseez/opencv 二,简介: OpenCV是Intel®开源计算机视觉库.它由一系列 C 函数和少量 C++ 类构成,实现了图像处理和计算机视觉方面的很多通用算法. 三,配置编译: 1,通过git下载opencv代码库,git地址:https://github.com/Itseez/opencv.git : 2,CMake配置成相关mak…
本文章摘录自浅墨博客,原文链接http://blog.csdn.net/poem_qianmo/article/details/19809337 目录 1.opencv下载与安装 2.计算机环境变量配置 3.VS目录包含 l  包含目录 l  工程录目录 l  附加依赖项 l  在Windows文件夹下加入OpenCV动态链接库 正文 一.opencv下载与安装 1.下载地址:官网下载地址https://opencv.org/       opencv为开源软件,可直接在官网下载最新版本. 2.…
在处理文件前需要引入OpenCV库,同时也引入unmpy库 import cv2 import numpy as np 1 基本的读写操作 1.1 图像文件的读写操作 1.1.1 图像文件的读取操作 opencv 的 imread() 函数和 imwrite() 函数支持各种静态图像文件格式.例如bmp, png, jpeg, tiff等. cv2.imread(filename[, flags]) imread() 函数从文件中加载并返回该图像,若指定图像不能被读取(文件丢失.权限不正确.不支…
话说,平凡之处显真格,这一点也没错!  比如,对旋转图像进行双线性插值,很简单吧?  可,对我,折腾了大半天,也没有达到预期效果!  尤其是三个误区让我抓瞎好久: 1,坐标旋转公式.   这东西,要用的时候查资料,抄过来,从不记清,猛地一下让人写正确,确实不容易,虽然只是正余弦的排列问题.画图推导的方法也是知道,但是,奈何又记不得三角形的和角展开公式.没办法,只好逐一测试验证了,心血经验,45.90,135,180这几个角度最好都验证一下. 2,双插的数据来源. 一开始,思维上习惯地数据来源认定…
#include <opencv2\highgui\highgui.hpp> #include <opencv2\imgproc\imgproc.hpp> #include <opencv2\core\core.hpp> ); int main() { cv::Mat img_orginal = cv::imread("F:\\images\\boldt.jpg"); cv::Mat img_altered = img_orginal.clone()…
#include <opencv2\core\core.hpp> #include <opencv2\highgui\highgui.hpp> #include <opencv2\imgproc\imgproc.hpp> #include <iostream> void salt(cv::Mat& image, int n) { ; k<n; k++) { int i = rand() % image.cols; int j = rand()…
一.概述: 人类能够观察到的光的波长范围是有限的,并且人类视觉有一个特点,只能分辨出二十几种灰度,也就是说即使采集到的灰度图像分辨率超级高,有上百个灰度级,但是很遗憾,人们只能看出二十几个,也就是说信息损失了五十倍.但人类视觉对彩色的分辨能力相当强,能够分辨出几千种色度,所以在实际应用中,可以将灰度图转变成彩虹图或者伪彩图等根据需求的彩色图. 二.彩虹图: 主要思路:把灰度图对应的0~255的数值分别转成彩虹色:红.橙.黄.绿.青.蓝,这里没有使用紫色,是因为紫色的效果并不好. //彩虹图的颜色…