标签:一个 设计 字符串 ring 解码 区别 理解 基本 关于
用Halcon解码时,如果一张图里面有多个码,它通常可以把这些码都解出来,并且生成对应的解码结果字符串元组(也就是下面的DecodedDataStrings),如果有多个码,那么该元组就有多个元素。
① find_bar_code(Image : SymbolRegions : BarCodeHandle, CodeType : DecodedDataStrings)
② find_data_code_2d(Image : SymbolXLDs : DataCodeHandle, GenParamName, GenParamValue : ResultHandles, DecodedDataStrings)
一维码和二维码解码的区别是:一维码解码后的显示区域是一个region(SymbolRegions ),而二维码解码后的显示区域是一个xld(SymbolXLDs )。
码的显示区域和解码字符串时一一对应的。但是有多个码时,码的显示区域本身是乱的,并不是按照“行坐标”或者“列坐标”排序的。这篇文章即是为了解决这个问题的。
先了解一个排序算子:tuple_sort_index( : : Tuple : Indices)
基本是,Halcon中绝大多数的排序问题,都需要使用这个算子。关于这个算子的理解,详见我之前的文章:Halcon选择一堆region中面积第N大的region的算法实现
排序算法设计要求:
① 需排序的数据对可能是()()()()()
以条码对应的字符为例。
根据row、row1、column 、column1,并且兼容region xld,这样才叫通用吧。
Region、Xld有对应的字符串时,将Region、Xld按照行列排序的算法实现
标签:一个 设计 字符串 ring 解码 区别 理解 基本 关于
原文地址:https://www.cnblogs.com/xh6300/p/11913218.html