Zbar не находит код

я пытаюсь найти QR-код, используя библиотеку ZBar (zbar.sourceforge.net) и opencv.

Вот мой код:

string findIDIncircle(Mat img, double* angle)
{
ImageScanner scanner;
zbar_image_scanner_set_config(scanner, ZBAR_NONE, ZBAR_CFG_ENABLE, 1);
int width = img.cols;
int height = img.rows;
uchar *raw = (uchar *)img.data;
Image image(width, height, "Y800", raw, width * height);
scanner.scan(image);
SymbolSet symbols = image.get_symbols();
for(Image::SymbolIterator symbol = image.symbol_begin(); symbol != image.symbol_end(); symbol++)
{
string data = symbol->get_data();
vector<Point> vp;
int n = symbol->get_location_size();
for(int i=0;i<n;i++)
{
vp.push_back(Point(symbol->get_location_x(i),symbol->get_location_y(i)));
}
RotatedRect r = minAreaRect(vp);
*angle = r.angle;
return data;
}
return "";
}

Но код ничего не находит. я проверил аргумент, используя imwrite на img, и изображение правильное и очень четкое http://www.qrcode-generator.de/)
Может кто-нибудь сказать мне, где проблема?

0

Решение

хорошо, я решил это сам, должен был преобразовать это в оттенки серого:

Mat gray;
cvtColor(img,gray,CV_BGR2GRAY);
uchar *raw = (uchar *)gray.data;
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]