现在,我正尝试在python和C#中使用ZBar检测QR码。
在python中,我通过以下方式成功检测了字符串数据和QR码的2D位置。
from pyzbar.pyzbar import decode
from pyzbar.pyzbar import ZBarSymbol
def __pyzbarDetect(self, image):
allCodes = decode(image)
data, x, y = "", 0, 0
for code in allCodes:
data = code.data.decode()
left, top, width, height = code.rect
x = left+round(width/2)
y = top +round(height/2)
return data, x, y
但是,在C#中,我仅成功检测到字符串数据,但未成功检测到2D位置。 我的C#代码如下。
using ZBar;
private static string zbarDetect(Mat image)
{
using (var scanner = new ImageScanner { Cache = false })
{
var scanned = scanner.Scan(image.ToBitmap());
var symbol = scanned.LastOrDefault();
var data = symbol?.Data ?? string.Empty;
return data;
}
}
可以使用C#检测QR码的二维位置(zbar-sharp) 以与python类似的方式(或完全不同的方式)?