Skip to main content
 Web开发网 » 编程语言 » Python语言

python中如何调用halcon方法?

2021年11月26日14670百度已收录

正常情况下Python是可以调用C++接口的,但是halcon中的数据结构是自定义类型,Python的基类型没有定义, 不过可以尝试中间层转换。

1. Python调用C++接口方法

比如有接口动态库myHalcon.dll

封装了两个接口

DLLEXPORT int sum(int a, int b) { return a + b; }

DLLEXPORT int sub(int a, int b) { return a-b; }

import ctypes

import os

CUR_PATH=os.path.dirname(__file__)

dllPath=os.path.join(CUR_PATH,"myHalcon.dll")

print (dllPath)

#mydll=ctypes.cdll.LoadLibrary(dllPath)

#print mydll

pDll=ctypes.WinDLL(dllPath)

print (pDll)

pResutl= pDll.sum(1,4)

pResult2=pDll.sub(1,4)

print (pResutl) print (pResult2)

好,有了以上知识,Python调用C++的接口,那么接下来可以使用自定义一个halcon动态库

UseHalconByPyhon.dll

数据类型对应好,比如:

类型 halcon UseHalconByPyhon

图像数据 HObject struct{unsighed char*pdata,int width, int height,int type}

int HTuple int

double HTuple double

string HTuple stirng

通过自定义接口,一一做对应接口参数,自己转换一层就可以了。

如下表中,数据,一一来做对应, halcon->C->python这个过程

python中如何调用halcon方法?  Python接口 第1张

上面这个只是通过python可以调用C++接口而想到的,这样做比较麻烦(我自己没有测试过)

评论列表暂无评论
发表评论
微信