jjzjj

android - 如何从 OpenCV for Android 中的每个轮廓中提取线条?

我想检查每个Canny检测到的边缘并寻找其中的主线(检查它们是否看起来像一个矩形,例如2对线是否平行等)。Imgproc.HoughLinesP做了我想要的,但它给出了整个图像的线条,我想知道哪些线条来自相同的边缘。我也尝试了FindContours,并使用approxPolyDP在每个轮廓中寻找主线,但这看起来并不适应,因为在Canny检测到的边缘中经常存在间隙。这给出了边缘的轮廓,而不是边缘本身。这是一个测试图像示例:如何为每个形状获取一组线条? 最佳答案 根据Miki的回答,这是我所做的:精明HoughLinesP(或Line

java - Android 上的 OpenCV 转换为灰度无法正常工作

我正在尝试将一些OpenCVMat转换为灰度以用于轮廓检测算法。由于某种原因,转换后的图像全黑。我的代码(b是AndroidBitmap):Mattmp=newMat(b.getWidth(),b.getHeight(),CvType.CV_8UC1);Utils.bitmapToMat(b,tmp);Imgproc.cvtColor(tmp,tmp,Imgproc.COLOR_BGR2GRAY);//therecouldbesomeprocessingImgproc.cvtColor(tmp,tmp,Imgproc.COLOR_GRAY2BGRA,4);Utils.matToBitm

Android OpenCV - 从 Houghlines 检测曲线

我正在使用适用于Android的OpenCV2.4.3.2编写应用程序。我的应用是关于车牌识别的。有几种方法,我选择了以下方法:1.将图像转换为HSV颜色空间2.根据车牌HSV的阈值图像(在我的国家他们是黄色的......)3.用高斯模糊平滑图像4.检测边缘5.寻找轮廓6.基金线7.从houglines中,检测匹配矩形的曲线我卡在7点,我找不到从houglines中成功检测矩形的方法。我非常感谢使用Java编写的代码示例,因为大多数示例都是使用C/C++编写的,并且转换它并不是那么简单。这是我的代码(现在我只是画线......):Imgproc.cvtColor(inputFrame,

android - 按背景颜色进行图像分割 - OpenCV Android

我正在尝试对名片进行分段并按背景颜色将它们分开,以将它们视为不同的兴趣区域。例如这样一张卡片:应该能够被分割成两个图像,因为有2种背景颜色。关于如何解决这个问题有什么建议吗?我试过做一些轮廓分析,但结果不太成功。其他示例卡片:这张卡片应该给出3个分段,因为它有三个部分,即使它只有2种颜色(尽管2种颜色也可以)。上面的卡片应该只给出一个分割,因为它只是一种背景颜色。我还没有尝试考虑渐变背景。 最佳答案 这取决于其他卡片的外观,但如果图像质量都很好,应该不会太难。在您发布的示例中,您可以只收集边框像素的颜色(最左列、最右列、第一行、最后

java - OpenCV 光反射减少

我有反光问题,这是用标准相机拍的照片和我做的处理1.blurtheimageImgproc.GaussianBlur(blurred,blurred,newSize(17,17),Imgproc.BORDER_ISOLATED);2.createsecondemptyimagethatusinghsvImgproc.cvtColor(gray0,gray0,Imgproc.COLOR_BGR2HSV);3.mixtheimagecolorchanel(fromto{0,0})Core.mixChannels(blurredlist,graylist,fromto);4.Threshol

ANDROID - 使用 openCV 进行颜色检测 - 如何?

我的目标是使用HSV颜色空间以仅显示黄色对象的方式显示脱粒图像。我使用此代码(基于openCV2.3.1android示例给出的代码):protectedBitmapprocessFrame(VideoCapturecapture){//capture.retrieve(mGray,Highgui.CV_CAP_ANDROID_GREY_FRAME);//Imgproc.cvtColor(mGray,mRgba,Imgproc.COLOR_GRAY2RGBA,4);capture.retrieve(mHSV,Highgui.CV_CAP_ANDROID_COLOR_FRAME_RGBA

android - 将 Mat 转换为位图 Opencv for Android

我正在尝试使用以下代码将MAt转换为位图:Bitmapbmp=Bitmap.createBitmap(width,height,Bitmap.Config.ARGB_8888);Mattmp=newMat(width,height,CvType.CV_8UC1,newScalar(4));try{//Imgproc.cvtColor(seedsImage,tmp,Imgproc.COLOR_RGB2BGRA);Imgproc.cvtColor(seedsImage,tmp,Imgproc.COLOR_GRAY2RGBA,4);Utils.matToBitmap(tmp,bmp);}ca

解决cv2.error: OpenCV(4.1.2) /io/opencv/modules/imgproc/src/color.cpp:182: error: (-215:Assertion fa

大家好,最近在使用OpenCV时,遇到了一个常见的错误:cv2.error:OpenCV(4.1.2)/io/opencv/modules/imgproc/src/color.cpp:182:error:(-215:Assertionfailed)!这个错误通常是由于输入图像的尺寸或数据类型不匹配引起的。在本篇文章中,我将与大家分享一些解决这个错误的方法。首先,我们需要了解这个错误的背景。这个错误通常出现在图像处理的过程中,比如颜色空间转换、图像过滤等。当输入图像的尺寸或数据类型与要求不符时,OpenCV会抛出这个错误。常见的情况包括输入图像为空、通道数不正确、图像类型不匹配等。那么,如何解决

【Python入门教程】CV2报错:cv2.error: OpenCV(4.7.0) D:\a\opencv-python\opencv-python\opencv\modules\imgproc\s

        OpenCV作为一个强大计算机视觉库被各个领域广泛应用,今天分享下自己编程遇到的报错信息以及解决办法。1报错信息[WARN:0@3.596]globalgrfmt_tiff.cpp:716cv::TiffDecoder::readDataOpenCVTIFF:TIFFRGBAImageOK:Sorry,cannothandleimageswith64-bitsamplescv2.error:OpenCV(4.7.0)D:\a\opencv-python\opencv-python\opencv\modules\imgproc\src\color.cpp:182:error:(-

掌握imgproc组件:opencv-图像处理

图像处理1.线性滤波:方框滤波、均值滤波、高斯滤波1.1平滑处理1.2图像滤波与滤波器1.3线性滤波器的简介1.4滤波和模糊1.5邻域算子与线性邻域滤波1.6方框滤波1.7均值滤波1.8高斯滤波1.9线性滤波综合案例2.非线性滤波:中值滤波、双边滤波2.1中值滤波2.2双边滤波2.3综合案例3.形态学滤波(1):腐蚀与膨胀3.1膨胀3.2腐蚀3.3腐蚀和膨胀综合案例4.形态学滤波(2):开运算、闭运算、形态学梯度、顶帽、黑帽4.1开运算4.2闭运算4.3形态学梯度4.4顶帽4.5黑帽4.6morphologyEx()函数4.7综合案例:形态学滤波5.漫水填充5.1漫水填充:floodFill函