我刚开始学习OpenCV编程.我可以问一下如何在OpenCV中识别线条和曲线?我的问题是我必须确定图像是否包含凸面或凹面(水平或垂直曲线)曲线,垂直,对角线或水平线.
在我的代码中,我习惯于CvSetImageROI
拍摄图像的特定部分,然后我尝试根据所述线条/曲线识别每个图像.
OpenCV中是否有可用的功能?非常感谢你的帮助.顺便说一句,我正在使用Linux和C++.
我刚刚开始使用OpenCV来检测图像中的特定曲线.首先,我想验证是否存在曲线,接下来,我想根据垂直或水平凸曲线或凹曲线确定曲线的类型.OpenCV中是否有可用的功能?如果没有,你能告诉我一些关于如何编写这样一个函数的想法吗?谢谢!顺便说一下,我正在使用C++.
#include "iostream"
#include "cv.h"
#include "highgui.h"
#include "cvaux.h"
#include "cxmisc.h"
#include "math.h"
using namespace cv;
using namespace std;
int main(){
int height, width, x, y, i, minX, minY, maxX, maxY;
char imgFileName[100];
IplImage *origImage = cvLoadImage("BaybayinMark/b9.jpg", -1);
height = origImage->height;
width = origImage->width;
IplImage *grayImage = cvCreateImage(cvSize(width, height), 8, 1);
IplImage *binImage = cvCreateImage(cvSize(width, height), 8, 1);
//Pre-processing phase
cvCvtColor(origImage, grayImage, CV_BGR2GRAY);
cvDilate(grayImage, grayImage, NULL, 1);
cvSmooth(grayImage, grayImage, CV_GAUSSIAN, 21, 21, 0, 0);
cvThreshold(grayImage, binImage, 120, 255, CV_THRESH_BINARY);
cvNormalize(binImage,binImage,0,1,CV_MINMAX);
minX …
Run Code Online (Sandbox Code Playgroud)