OpenCV——积分图计算

 1 #include <opencv2/opencv.hpp>
 2 #include <iostream>
 3 #include "math.h"
 4
 5 using namespace cv;
 6 using namespace std;
 7
 8 int main(int argc, char** argv) {
 9     Mat src = imread("test.jpg",0);
10     if (src.empty()) {
11         printf("could not load image...\n");
12         return -1;
13     }
14     imshow("input image", src);
15
16     //计算积分图
17     Mat sumii = Mat::zeros(src.rows+1,src.cols+1,CV_32FC1);//CV_32FC1防止溢出
18     Mat sqsumii = Mat::zeros(src.rows + 1, src.cols + 1, CV_32FC1);//CV_32FC1防止溢出
19     integral(src,sumii,sqsumii);
20
21     normalize(sumii, sumii,0,255,NORM_MINMAX,CV_8UC1,Mat());
22     imshow("integral image", sumii);
23
24     waitKey(0);
25     return 0;
26 }

原文地址:https://www.cnblogs.com/long5683/p/9738104.html

时间: 2024-11-02 18:03:20

OpenCV——积分图计算的相关文章

浅析人脸检测之Haar分类器方法:Haar特征、积分图、 AdaBoost 、级联

浅析人脸检测之Haar分类器方法 一.Haar分类器的前世今生 人脸检测属于计算机视觉的范畴,早期人们的主要研究方向是人脸识别,即根据人脸来识别人物的身份,后来在复杂背景下的人脸检测需求越来越大,人脸检测也逐渐作为一个单独的研究方向发展起来. 目前的人脸检测方法主要有两大类:基于知识和基于统计. Ø  基于知识的方法:主要利用先验知识将人脸看作器官特征的组合,根据眼睛.眉毛.嘴巴.鼻子等器官的特征以及相互之间的几何位置关系来检测人脸. Ø  基于统计的方法:将人脸看作一个整体的模式——二维像素矩

【练习6.14】积分图像cvIntegral及使用积分图的性质找横向和纵向边,IplImage结构中widthStep细节

提纲 题目要求 程序代码 结果图片 要言妙道 题目要求: 加载一副灰度图,得到它的积分图.利用积分图的性质找到图像里的横向和纵向边缘. 利用细长的矩形,在适当的位置减去或加上它们. 备注:边缘查找尚未加入代码 程序代码: 1 // OpenCVExerciseTesting.cpp : 定义控制台应用程序的入口点. 2 // 3 //D:\\Work\\Work_Programming\\Source\\Image\\lena.jpg 4 5 #include "stdafx.h" 6

积分图的实现

//改进的计算像素灰度值积分图像 //image_Src:灰度图 //image_Integral:image_Src大小相同的CV_32SC1类型 //方法:Integral(y,x) = Integral(y-1,x) + rowSum(y); void CalculateIntegralImage(const Mat &image_Src,Mat &image_Integral) { ////////////step 1.重新分配图像(如果需要)///////////////// /

图像处理之积分图应用四(基于局部均值的图像二值化算法)

图像处理之积分图应用四(基于局部均值的图像二值化算法) 基本原理 均值法,选择的阈值是局部范围内像素的灰度均值(gray mean),该方法的一个变种是用常量C减去均值Mean,然后根据均值实现如下操作: pixel = (pixel > (mean - c)) ? object : background 其中默认情况下参数C取值为0.object表示前景像素,background表示背景像素. 实现步骤 1. 彩色图像转灰度图像 2. 获取灰度图像的像素数据,预计算积分图 3. 根据输入的参数

机器视觉中的图像积分图及其实现

计算机视觉中,人脸检测(Face Detection)是一项常见的任务.Paul Viola和Michael Jones在<Rapid object detection using a Boosted cascade ofsimple features>一文中提出的快速对象识别算法将人脸检测推向了一个新的高度,这种将Adaboost 和Cascade 算法综合运用的实时人脸检测系统,使人脸检测这项工作具有了更为实际的意义和价值.其中,为了加速Haar特征的计算,他们提出了积分图的概念. 坐标点

积分图实现均值滤波的CUDA代码

没想到我2010年买的笔记本显卡GT330M 竟然还能跑CUDA,果断小试了一把,环境为CUDA6.5+VS2012,写了一个积分图实现均值滤波.类似于OpenCV的blur()函数. 使用lena.jpg做测试,效果如下:        代码在此: #include "cuda_runtime.h" #include "device_launch_parameters.h" #include <stdio.h> #include <opencv2

机器视觉中的图像积分图及事实上现

计算机视觉中,人脸检測(Face Detection)是一项常见的任务. Paul Viola和Michael Jones在<Rapid object detection using a Boosted cascade ofsimple features>一文中提出的高速对象识别算法将人脸检測推向了一个新的高度,这样的将Adaboost 和Cascade 算法综合运用的实时人脸检測系统,使人脸检測这项工作具有了更为实际的意义和价值. 当中.为了加速Haar特征的计算,他们提出了积分图的概念.

明风:分布式图计算的平台Spark GraphX 在淘宝的实践

快刀初试:Spark GraphX在淘宝的实践 作者:明风 (本文由团队中梧苇和我一起撰写,并由团队中的林岳,岩岫,世仪等多人Review,发表于程序员的8月刊,由于篇幅原因,略作删减,本文为完整版) 对于网络科学而言,世间万物都可以抽象成点,而事物之间的关系都可以抽象成边,并根据不同的应用场景,生成不同的网络,因此整个世界都可以用一个巨大的复杂网络来代表.有关复杂网络和图算法的研究,在最近的十几年取得了巨大的进展,并在多个领域有重要的应用. 作为最大的电商平台,淘宝上数亿买家和卖家,每天产生数

关于图计算和graphx的一些思考[转]

原文链接:http://www.tuicool.com/articles/3MjURj “全世界的网络连接起来,英特纳雄耐尔就一定要实现.”受益于这个时代,互联网从小众的角落走到了历史的中心舞台.如果无远弗届的互联网将把会整个世界转化成了一个巨型网络,那么就让这一切首先从淘宝开始吧. 最近我们试图将淘宝的交易记录中的物品和人组成一个对分网络(bipartite network).对于这个网络的,我们有许多有趣的问题:这个网络中节点的度分布会是什么样?在这个网络中,是否也存在“权威节点”?是否也有