反向投影(Back Projection)

反向投影是根据已知图像的直方图,在其他图像中寻找匹配特征的过程。它遍历目标图像的每个像素,将其与直方图对应bin比较并保存值到新图像。OpenCV提供了`calcBackProject`函数来计算反向投影,该函数接受输入图像、直方图、输出反向投影图像等参数,并允许设置范围、缩放和是否均匀分布等选项。

官网教程

原理

  • 反向投影表示的是一种(给定的一幅图的直方图)和(需要匹配的图的像素)匹配程度。
  • 举例:如果已知一副图像的直方图,图中有特征区域, 根据此直方图能在其他图像中检测到相似的特征区域

步骤:

  1. 先对特征图片计算它的直方图(可能是多维)
  2. 遍历匹配图像,找到每一个像素点对应特征图的直方图中的bin
  3. 将此bin中的值保存到新图像(最后的back projection)



代码

官网代码

#include <opencv2/opencv.hpp>
#include <iostream>

using namespace cv;
using namespace std;


Mat hue;
int bins=25;

void Hist_and_Backprj(int,void*);

int main(void)
{
   
   
    Mat src = imread("../res/hand.jpg");
    if(src.empty())
    {
   
   
	cout << "can't load the image" << endl;
    }

    Mat hsv;
    cvtColor(src,hsv,cv::COLOR_BGR2HSV);

    hue.create(src.size<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值