opencv简单的霍夫线变换应用,得到物体角度

该博客介绍了如何运用OpenCV库进行图像处理,通过霍夫线变换去除杂质并检测物体的角度。文章中提到,经过处理后找到最长的线段,认为其代表了物体的主要方向,计算得出的角度为39度。提供了原图和处理后的图像对比,以及霍夫线变换得到的线段结果。
摘要由CSDN通过智能技术生成

先处理图像,滤去杂质,进行霍夫线变换,得到线段的序列,选择一根最长的线,这里简单处理,选择纵向最长的,进行角度的计算。

#include <iostream>
#include <opencv2/opencv.hpp>
#include <queue>
#include <math.h>

using namespace std;
using namespace cv;
int main()
{
	IplImage * g1 = cvLoadImage("倾斜的尺子.bmp", 1);//原图
	IplImage * g2 = cvCreateImage(cvSize(g1->width, g1->height), IPL_DEPTH_8U, 1);//存储灰度化后的图像
	IplImage * g3 = cvCreateImage(cvSize(g1->width, g1->height), IPL_DEPTH_8U, 1);//存储二值化、腐蚀、膨胀后的图像
	CvMemStorage* m_storage = cvCreateMemStorage(0);

	int length = 0;
	int maxTemp = 0;
	int maxLength = 0;
	double slope = 0;//斜率
	int tubeAngle = 0;//角度

	IplImage *dst = cvCloneImage(g1);//霍夫变换得到的直线画在dst上
	cvShowImage("原图", g1);
	cvCvtColor(g1, g2, CV_BGR2GRAY);//  转化为灰度图像
	cvAdaptiveThreshold(g2, g3, 255, 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值