halcon不能直接读取xml格式文件,需要对xml文件做一定的转换。

可以通过Python把xml格式转为json格式,halcon再读取。

以下是python把xml格式文件转为json格式的代码:

# 需要导入的模块
import xmltodict;
import json;

# 定义函数
def pythonXmlToJson():
    # test.xml,为xml文件的名称,这里是文件放在程序的相对目录下。
    with  open('test.xml', 'r') as f:
        xmlStr = f.read()

    convertedDict = xmltodict.parse(xmlStr);
    jsonStr = json.dumps(convertedDict, indent=1);
    # 文件将存储在程序运行目录下,名称为data.json。
    file=open("data.json","w")
    file.write(jsonStr)
    file.close()


# 执行函数
if __name__ == "__main__":
    pythonXmlToJson();

json文件存储下来后,在halcon里面,使用read_dict读取。

read_dict ('data.json', [], [], DictHandle)

另外,halcon也可以做json和dict格式的转换。使用算子:

dict_to_json

json_to_dict

11-19 03:53