石鑫华视觉 发表于 2019-1-18 10:57:43

LabVIEW字符串A到字符串B映射关系建立的一种方便方法-查找表法

LabVIEW字符串A到字符串B映射关系建立的一种方便方法-查找表法

在群里看到这样一个问题,如何将年代映射到其它的字符上。如将2001映射为1,2011映射为B,2021映射为M等,如下表所示:

但是这之间,要考虑一下,映射关系中,是将字母I、O、Q跳过了的,即IOQ这些与数字1、0类似的,都跳过了没有使用。
有些人说用ASCII码处理:

ASCII方法1

ASCII方法2
这种方法,都是固定的年代对应了相应的字符串。而且是不能跳过IOQ之类的,如果要跳过,还得加一些判断才可以。

机器视觉论坛给的一种便利方法:

这里给的这种方法,将映射关系设置成参数,由用户自己来确定。他们确定好后,将映射关系保存为配置文件(需要其它方法来保存,如INI、XML文件等)。然后只需要输入原值,在原始数组中去查找其所在的数组索引,然后再利用该数组索引,在映射数组中索引相应的值,即可得到原值对应的映射值。当然这里要对原始数组和映射数组的大小做判断,一般来讲,是要求一样大小的。另外也可能要对原始数组和映射数组中是不是有一样的值做判断。当然,理论上也可以原始数组多个值对应映射数组,但是反过来,原始数组中一个值对应映射数组多个值的话,就不太建议了。其它这种方法,类似于图像处理中的查找表。即将某一个值映射到另一个值的方式来改变原值。
页: [1]
查看完整版本: LabVIEW字符串A到字符串B映射关系建立的一种方便方法-查找表法

LabVIEW HALCON图像处理入门教程(第二版)
石鑫华机器视觉与LabVIEW Vision图像处理PDF+视频教程11种全套
《LabVIEW Vision函数实例详解》教程-NI Vision所有函数使用方法介绍,基于NI VISION2020,兼容VDM21/22/23