OpenCV:获取图像重心
来源:互联网 发布:蔷薇少女 知乎 编辑:程序博客网 时间:2024/06/02 21:24
//-----------------------------------【程序说明】----------------------------------------------// 程序名称::《获取图像重心》// 开发所用系统:Windows 8.1 Pro// 开发所用IDE版本:Visual Studio 2013 Ultimate// 开发所用OpenCV版本: 2.4.8// 2014年5月6日 Integtated by Thunthersine//------------------------------------------------------------------------------------------------#include "stdafx.h"#include "cv.h" #include "highgui.h" #include "cvaux.h" #include "cxcore.h" #include <stdio.h> #include <vector> using namespace std;using namespace cv;void main(){ double m00, m10, m01, x, y; //定义x,y为重心坐标。 IplImage* img1 = cvLoadImage("tyre.jpg", 1); IplImage* img1_gray = cvCreateImage(cvGetSize(img1), 8, 1); cvCvtColor(img1, img1_gray, CV_BGR2GRAY); IplImage* img_edge1 = cvCreateImage(cvGetSize(img1), 8, 1); cvThreshold(img1_gray, img_edge1, 240, 255, CV_THRESH_BINARY); CvMemStorage* storage1 = cvCreateMemStorage(); CvSeq* contour1 = NULL; int outline = cvFindContours(img_edge1, storage1, &contour1, sizeof(CvContour), CV_RETR_LIST); //获取轮廓数 printf("轮廓数:%d\n", outline); //轮廓的矩 CvMoments *moments1 = new CvMoments(); cvMoments(contour1, moments1, 0); //Hu矩 CvHuMoments *huMonents1 = new CvHuMoments(); cvGetHuMoments(moments1, huMonents1); printf("遍历三阶矩:\n"); for (int xOrder = 0; xOrder <= 3; xOrder++) for (int yOrder = 0; yOrder <= 3; yOrder++) { if (xOrder + yOrder <= 3) { double spatialMoment = cvGetSpatialMoment(moments1, xOrder, yOrder); printf(" %d,%d : 空间距-%.2f\n", xOrder, yOrder, spatialMoment); } } m00 = cvGetSpatialMoment(moments1, 0, 0); m10 = cvGetSpatialMoment(moments1, 1, 0); m01 = cvGetSpatialMoment(moments1, 0, 1); x = (int)(m10 / m00); y = (int)(m01 / m00); printf("轮胎中心坐标为:%f,%f\n", x,y);}
0 0
- OpenCV:获取图像重心
- 利用opencv求图像重心
- opencv图像灰度重心算法
- opencv图像灰度重心算法
- 利用OpenCV求取图像的重心
- Opencv求取灰度图像的重心
- 利用OpenCV求取图像的重心
- OpenCV中计算二值图像的重心
- OpenCV计算物体的重心坐标(2值图像)
- unicap+opencv获取图像
- 图像轮廓获取opencv
- 【OpenCV】获取摄像头图像
- opencv获取二值化图像轮廓
- opencv获取图像感兴趣部分
- Opencv--鼠标获取图像坐标
- opencv获取图像的指针
- opencv序列图像ROI获取
- opencv: 获取 图像属性 (源码)
- Core Data浅谈系列之四 : 数据模型的版本变迁
- Ubuntu14.04 下Android开发环境搭建
- 广州火车站4名戴白帽男子持刀砍人 6人受伤
- java 生成 二维码
- 暑期技术实习笔试
- OpenCV:获取图像重心
- 企业如何实现云计算价值的最大化
- 无类型语言crowbar源码解析-0
- nyoj 485 A*B Problem
- malloc/free and new/delete in C++
- Orbitz 第一季度财报公布:移动端酒店预订达30%
- android c成代码编译出来的bin(system/bin/目录下)文件 ,在代码中增加打印的方法
- Core Data浅谈系列之五 : 在UITableView中展示
- eclipse html插件的下载和安装