介绍
1,扫码识别算法
①支持条形码识别、二维码识别和矩形码识别。
②Open MV3及以上可以用,Open MV2版本由于内存问题无法使用
2,条形码检测
①通常在640×480分辨率下进行,因为需要较高的精度
②可以调整检测窗口的尺寸以适应条形码的不同尺寸
③不必考虑畸变问题,因为条形码是线性的一维信息
3,矩形码识别
①矩形码常用于产品标识、防伪和生产线上的数据指认
②通过矩形可以存储大量信息,且体积小
4,代码实现
①条形码和二维码检测代码均可以在Open MV3及以上平台运行
②提供了详细的代码示例,包括如何获取条形码和二维码的类型、内容等信息
源码
1,识别条形码
import sensor, image, time, math
sensor.reset()
sensor.set_pixformat(sensor.GRAYSCALE)
sensor.set_framesize(sensor.VGA)
sensor.set_windowing((640, 120 ))
sensor.skip_frames(time = 2000)
sensor.set_auto_gain(False)
sensor.set_auto_whitebal(False)
clock = time.clock()
def barcode_name(code):
if(code.type() == image.EAN2):
return "EAN2"
if(code.type() == image.EAN5):
return "EAN5"
if(code.type() == image.EAN8):
return "EAN8"
if(code.type() == image.UPCE):
return "UP