OpenCV---直方图反向投影
一:直方图反向投影的方法


二:二维直方图的表示
(一)直接显示
def hist2D_demo(image):
hsv = cv.cvtColor(image,cv.COLOR_BGR2HSV)
hist = cv.calcHist([image],[,],None,[,],[,,,])
cv.imshow("hist2D",hist)

(二)使用matplotlib
def hist2D_demo(image):
hsv = cv.cvtColor(image,cv.COLOR_BGR2HSV)
hist = cv.calcHist([image],[,],None,[,],[,,,])
plt.imshow(hist,interpolation="nearest")
plt.title("2D Histogram")
plt.show()

三:直方图反向映射
calcHist方法参数可见:OpenCV---图像直方图
def back_projection_demo():
sample = cv.imread("./s2.png")
target = cv.imread("./b.png")
roi_hsv = cv.cvtColor(sample,cv.COLOR_BGR2HSV)
tar_hsv = cv.cvtColor(target,cv.COLOR_BGR2HSV) cv.imshow("sample",sample)
cv.imshow("target",target) roihist = cv.calcHist([roi_hsv], [, ], None, [324, 356], [, , , ]) #加红部分越小,匹配越放松,匹配越全面,若是bsize值越大,则要求得越精细,越不易匹配,所以导致匹配出来的比较小
cv.normalize(roihist,roihist,,,cv.NORM_MINMAX) #规划到0-255之间
dst = cv.calcBackProject([tar_hsv],[,],roihist,[,,,],) #直方图反向投影
cv.imshow("back_projection_demo",dst)

roihist = cv.calcHist([roi_hsv], [, ], None, [32, 46], [, , , ]) #这是两个通道,bsize变少了,但是他的匹配更加广了(对于匹配的局限放宽了)

opencv 2 归一化函数normalize详解
. 归一化就是要把需要处理的数据经过处理后(通过某种算法)限制在你需要的一定范围内。 归一化函数cv2.normalize原型:normalize(src, dst[, alpha[, beta[, norm_type[, dtype[, mask]]]]]) -> dst src参数表示输入数组。 dst参数表示输出与src相同大小的数组,支持原地运算。 alpha参数表示range normalization模式的最小值。 beta参数表示range normalization模式的最大值,不用于norm normalization(范数归一化)模式。 norm_type参数表示归一化的类型。 norm_type参数可以有以下的取值: NORM_MINMAX:数组的数值被平移或缩放到一个指定的范围,线性归一化,一般较常用。 NORM_INF:归一化数组的C-范数(绝对值的最大值)。 NORM_L1 :归一化数组的L1-范数(绝对值的和)。 NORM_L2 :归一化数组的(欧几里德)L2-范数。
.反向投影用于在输入图像(通常较大)中查找特定图像(通常较小或者仅1个像素,以下将其称为模板图像)最匹配的点或者区域,也就是定位模板图像出现在输入图像的位置。 函数cv2.calcBackProject用来计算直方图反向投影。 函数原型:calcBackProject(images, channels, hist, ranges, scale[, dst]) -> dst images参数表示输入图像(是HSV图像)。传入时应该用中括号[ ]括起来。 channels参数表示用于计算反向投影的通道列表,通道数必须与直方图维度相匹配。 hist参数表示输入的模板图像直方图。 ranges参数表示直方图中每个维度bin的取值范围 (即每个维度有多少个bin)。 scale参数表示可选输出反向投影的比例因子,一般取1。
OpenCV---直方图反向投影的更多相关文章
- OpenCV2马拉松第10圈——直方图反向投影(back project)
收入囊中 灰度图像的反向投影 彩色图像的反向投影 利用反向投影做object detect 葵花宝典 什么是反向投影?事实上没有那么高大上! 在上一篇博文学到,图像能够获得自己的灰度直方图. 反向投影 ...
- opencv——图像直方图与反向投影
引言 在图像处理中,对于直方图这个概念,肯定不会陌生.但是其原理真的可以信手拈来吗? 本文篇幅有点长,在此列个目录,大家可以跳着看: 分析图像直方图的概念,以及opencv函数calcHist()对于 ...
- OpenCV——反向投影(定位模板图像在输入图像中的位置)
反向投影: #include <opencv2/opencv.hpp> #include <iostream> using namespace cv; using namesp ...
- OPENCV直方图与匹配
直方图可以用来描述不同的参数和事物,如物体的色彩分布,物体的边缘梯度模版以及目标位置的当前假设的概率分布. 直方图就是对数据进行统计的一种方法,并且将统计值定义到一系列定义好的bin(组距)中,获得一 ...
- 反向投影(BackProjection)
如果一幅图像的区域中显示的是一种结构纹理或者一个独特的物体,那么这个区域的直方图可以看作一个概率函数,他给的是某个像素属于该纹理或物体的概率. 所谓反向投影就是首先计算某一特征的直方图模型,然后使用模 ...
- OpenCV —— 直方图与匹配
直方图就是对数据进行统计,将统计值组织到一系列事先定义好的bin中.bin中的数值是从数据中计算出来的特征的统计量,这些数据可以是诸如梯度,方向,色彩或任何其他特征. 直方图获得是是数据分布的统计图 ...
- openCV 直方图统计
直方图显示 #include <opencv2/opencv.hpp> using namespace std; using namespace cv; int main(int argc ...
- OpenCV——直方图均衡化(用于图像增强)
#include <opencv2/opencv.hpp> #include <iostream> #include <math.h> using namespac ...
- opencv:直方图操作
示例程序: #include <opencv.hpp> using namespace cv; using namespace std; int main() { Mat src, dst ...
随机推荐
- ES6的新特性(6)——正则的扩展
正则的扩展 RegExp 构造函数 在 ES5 中,RegExp构造函数的参数有两种情况. 第一种情况是,参数是字符串,这时第二个参数表示正则表达式的修饰符(flag). var regex = ne ...
- 通俗理解Hilbert希尔伯特空间
作者:qang pan 链接:https://www.zhihu.com/question/19967778/answer/28403912 来源:知乎 著作权归作者所有.商业转载请联系作者获得授权, ...
- POJ 2484(对称博弈)
题目链接:http://poj.org/problem?id=2484 这道题目大意是这样的,有n个硬币围成一圈,两个人轮流开始取硬币(假设他们编号从1到n),可以选择取一枚或者取相邻的两枚(相邻是指 ...
- mysql不能启动报error2013错误的解决办法
Mysql mysql lost connection to server during query 问题解决方法 2013-10-16 11:10:53 缘由: 在查询Mysql中的数据库,或者修改 ...
- lintcode-223-回文链表
223-回文链表 设计一种方式检查一个链表是否为回文链表. 样例 1->2->1 就是一个回文链表. 挑战 O(n)的时间和O(1)的额外空间. 标签 链表 思路 找到链表中点后,翻转链表 ...
- 阿里云服务器内部dns可能出错
今天部署一个阿里云服务器,所有配置项都改好了,就是连接不上本机. 反复查找,防火墙端口和网卡接口都配置对了,selinux也关闭了,但就是连接不上阿里云内网的ip. 由于连接是本机,把ip填写为127 ...
- 【beta】Scrum站立会议第5次....11.7
小组名称:nice! 组长:李权 成员:于淼 刘芳芳韩媛媛 宫丽君 项目内容:约跑app(约吧) 时间:2016.11.7 12:00——12:30 地点:传媒西楼220室 本次对beta阶段的 ...
- MAVEN项目标准目录结构 ;
http://blog.csdn.net/lengyue_wy/article/details/6718637 版权声明:本文为博主原创文章,未经博主允许不得转载. 1.标准目录结构: src ...
- 实现全站 HTTPS ,为什么国内网站总是那么slow&&low呀!
1 https://konklone.com/post/switch-to-https-now-for-free# https://theintercept.com/2014/11/20/non-pr ...
- ONS发布订阅消息
ONS, 全名Open Notification Service, 是阿里基于开源消息中间件RocketMQ的一个云产品. 首先,要申请阿里账号等.本地也可以申请阿里云账号自己调试.此处为公司拥有阿里 ...