相关疑难解决方法(0)

OpenCV python:ValueError:要解压缩的值太多

我正在编写一个opencv程序,我在另一个stackoverflow问题上找到了一个脚本:计算机视觉:屏蔽人手

当我运行脚本的答案时,我收到以下错误:

Traceback (most recent call last):
    File "skinimagecontour.py", line 13, in <module>
    contours, _ = cv2.findContours(skin_ycrcb, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
ValueError: too many values to unpack
Run Code Online (Sandbox Code Playgroud)

代码:

import sys
import numpy
import cv2

im = cv2.imread('Photos/test.jpg')
im_ycrcb = cv2.cvtColor(im, cv2.COLOR_BGR2YCR_CB)

skin_ycrcb_mint = numpy.array((0, 133, 77))
skin_ycrcb_maxt = numpy.array((255, 173, 127))
skin_ycrcb = cv2.inRange(im_ycrcb, skin_ycrcb_mint, skin_ycrcb_maxt)
cv2.imwrite('Photos/output2.jpg', skin_ycrcb) # Second image

contours, _ = cv2.findContours(skin_ycrcb, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
for i, c in enumerate(contours):
    area = cv2.contourArea(c)
    if area > 1000:
        cv2.drawContours(im, contours, …
Run Code Online (Sandbox Code Playgroud)

python opencv image-processing

68
推荐指数
5
解决办法
8万
查看次数

使用opencv进行分词

我正在研究一些扫描的文本图像,我需要突出显示该图像中的所有单词.我知道问题等同于查找周围有额外空格的子图像.

OCR无法使用,我只需要用边框勾勒每个单词.有人可以建议如何使用OpenCV完成它.

我曾尝试阅读有关阈值处理和分段的内容.我只是想找人指点一些相关资料.

opencv image-processing image-segmentation

7
推荐指数
1
解决办法
1万
查看次数

从图像中分割字符

我在分割下面的车牌图像时面临问题,而对下面的图像进行阈值处理时,字符被分成多于1个字符.所以我得到了错误的OCR结果.我在对图像进行阈值处理后应用了形态学关闭操作,即使在此之后我也无法正确分割字符.

车牌图片1

车牌图片2

车牌图片3

车牌图片4

用于分割上面图像的代码如下

#include <iostream>
#include<cv.h>
#include<highgui.h>

using namespace std;
using namespace cv;
int main(int argc, char *argv[])
{
  IplImage *img1 = cvLoadImage(argv[1] , 0);
  IplImage *img2 = cvCloneImage(img1);

  cvNamedWindow("Orig"); 
  cvShowImage("Orig",img1);
  cvWaitKey(0);

  int wind = img1->height;
  if (wind % 2 == 0) wind += 1;

  cvAdaptiveThreshold(img1, img1, 255, CV_ADAPTIVE_THRESH_GAUSSIAN_C,
                      CV_THRESH_BINARY_INV, wind);

  IplImage* temp = cvCloneImage(img1);

  cvNamedWindow("Thre"); 
  cvShowImage("Thre",img1);
  cvWaitKey(0);

  IplConvKernel* kernal = cvCreateStructuringElementEx(3, 3, 1, 1,
                                                       CV_SHAPE_RECT,NULL);

  cvMorphologyEx(img1, img1, temp, kernal, CV_MOP_CLOSE, 1);

  cvNamedWindow("close"); 
  cvShowImage("close",img1);

  cvWaitKey(0);
}
Run Code Online (Sandbox Code Playgroud)

下面给出的输出图像..

UY和2未正确分段

U,P,Y和2未正确分段

U 3 Y 2和5未正确分段

任何人都可以提供一种很好的方法来分割这些图像中的字符......

opencv image image-processing computer-vision

6
推荐指数
1
解决办法
7724
查看次数