***真正的难题.高手请进***

时间:2022-04-15 03:49:21
我使用一维code 128码制一个扫描进来的A4图片.该图片里面只有一个条形码.条型码解码成字符,终于搞定完成.但是现在有一个更难的技术问题要面临.还请高手指点.

如果角度不是正的话(与纸非垂直,也就是扫描原图的时候,纸放的不是很正),就可能出现错误.其表现如下:
1.解决角度不正,也就是条码不是和A4的垂直.是歪的.读出不值,系统报错.
2.解度如果180度倒过来的话,读出的值是错的.

请问有什么办法去解决这个角度问题吗?谢谢高手了.真的非常的难.这个问题.呵呵.

分数另开贴再送分!!!!
up者也有分.

14 个解决方案

#1


up

#2


这个应该找些图像倾斜矫正类的资料,另外倒了的怎么知道是错的?条码前几位是固定的吗?

#3


2 用户倒过来描的识别错误的问题,可以在条码开头加上个特殊的记号,扫描时发现这个字符在尾部,就按反过来扫描的方法重新解码,不需要用户重新扫描。

#4


我知道超市什么的自己定义的条码前几位都是固定的特殊编号的,倒了的话可以在内存中将图像翻转一下,条码设备读入的条码值应该只返回数字信息,似乎没有这种反转的算法?

#5


参考网络中的包发送与接受

#6


up一下.

#7


角度不正应该是影响了线的宽度吧,按最细的线,重新算一下,应该可以吧

#8


如果扫描的不正的话,是要进行图形处理的,就象 处理 车辆牌照的图像的时候,有可能输入的图片是倾斜角度的, 这个时候, 需要对图片进行预先处理, 象角度旋转等, 需要参考具体的技术资料的.

#9


自已UP一下.

#10


大致应该先检测图像的倾斜角度,然后旋转校正。
如果顾及到效率问题,不校正也能够处理。

检测图像角度可以利用一些边缘提取算法,然后用霍夫变换就搞定了。
至于翻转的问题可能比较麻烦,不过可以考虑“鸵鸟算法”,仍出个出错信息就是了:)
也可以考虑条码的特征,在发现非法数字的时候,调换条码顺序。

#11


条码的不太熟,学习一下。

#12


还没解决么?

2 用户倒过来描的识别错误的问题,可以在条码开头加上个特殊的记号,扫描时发现这个字符在尾部,就按反过来扫描的方法重新解码,不需要用户重新扫描。
-------------------------------------------------------------------------
这样就基本解决倒过来描的问题,不过为了让解码后的字符仍能分辨出这个特定的记号,通常这个记号的码是两条或多条相同宽度的条码,这样正反扫描都是相同的字符。

1 倾斜扫描的问题可以参照上面,只是把这个特殊记号的条码弄成最细的,这样倾斜到一定程度,影响到正确识别的话,就会连这个记号也认不出认正确的了。所以,只要记号不在最前面,就不算扫描完毕。
  如果你要做到最大程度方便用户的话,对倾斜程度要求很低。那就辛苦一点,把因为过于倾斜造成记号从字符AA识别成了BB(倾斜后条码变宽了),就把所有条码的宽度降一级来解码。

#13


up

#14


我有一个切实可以解决的办法,我的邮箱是:tangwei168@sina.com.希望可以帮到你.

#1


up

#2


这个应该找些图像倾斜矫正类的资料,另外倒了的怎么知道是错的?条码前几位是固定的吗?

#3


2 用户倒过来描的识别错误的问题,可以在条码开头加上个特殊的记号,扫描时发现这个字符在尾部,就按反过来扫描的方法重新解码,不需要用户重新扫描。

#4


我知道超市什么的自己定义的条码前几位都是固定的特殊编号的,倒了的话可以在内存中将图像翻转一下,条码设备读入的条码值应该只返回数字信息,似乎没有这种反转的算法?

#5


参考网络中的包发送与接受

#6


up一下.

#7


角度不正应该是影响了线的宽度吧,按最细的线,重新算一下,应该可以吧

#8


如果扫描的不正的话,是要进行图形处理的,就象 处理 车辆牌照的图像的时候,有可能输入的图片是倾斜角度的, 这个时候, 需要对图片进行预先处理, 象角度旋转等, 需要参考具体的技术资料的.

#9


自已UP一下.

#10


大致应该先检测图像的倾斜角度,然后旋转校正。
如果顾及到效率问题,不校正也能够处理。

检测图像角度可以利用一些边缘提取算法,然后用霍夫变换就搞定了。
至于翻转的问题可能比较麻烦,不过可以考虑“鸵鸟算法”,仍出个出错信息就是了:)
也可以考虑条码的特征,在发现非法数字的时候,调换条码顺序。

#11


条码的不太熟,学习一下。

#12


还没解决么?

2 用户倒过来描的识别错误的问题,可以在条码开头加上个特殊的记号,扫描时发现这个字符在尾部,就按反过来扫描的方法重新解码,不需要用户重新扫描。
-------------------------------------------------------------------------
这样就基本解决倒过来描的问题,不过为了让解码后的字符仍能分辨出这个特定的记号,通常这个记号的码是两条或多条相同宽度的条码,这样正反扫描都是相同的字符。

1 倾斜扫描的问题可以参照上面,只是把这个特殊记号的条码弄成最细的,这样倾斜到一定程度,影响到正确识别的话,就会连这个记号也认不出认正确的了。所以,只要记号不在最前面,就不算扫描完毕。
  如果你要做到最大程度方便用户的话,对倾斜程度要求很低。那就辛苦一点,把因为过于倾斜造成记号从字符AA识别成了BB(倾斜后条码变宽了),就把所有条码的宽度降一级来解码。

#13


up

#14


我有一个切实可以解决的办法,我的邮箱是:tangwei168@sina.com.希望可以帮到你.