当前位置: 首页 > news >正文

python版halcon环境配置

很久以前发过一篇python版halcon的使用方法.

可能有些地方没有说清楚,后台有人私信问我:"不装halcon怎样使用python调用halcon"

事实上前篇介绍的非常详细了,但是对初学者还是不够友好.

不废话,说步骤:首先系统win10 X64 22H2 安装python3.8.8 x64

安装python依赖包;安装halcon-python

pip install mvtec-halcon==24111

 接下来依赖的dll复制到py程序运行目录: 如图所示 我在程序运行目录兴新建了"dll"文件夹 所有依赖复制到这里了.

 可以看到有这么一句:  主要有用的是 import halcon as ha

但是不安装halcon只复制dll python在环境变量和本地运行环境找不到依赖所以会报错的.

你可以尝试 删掉

 sys.path.append("../DLL")
os.chdir(f'{os.getcwd()}/DLL') #切换工作路径
os.chdir(f'{os.getcwd()}/..') #切换工作路径

只保留import halcon as ha看看会怎样.

sys.path.append("../DLL")
os.chdir(f'{os.getcwd()}/DLL') #切换工作路径
import halcon as ha
os.chdir(f'{os.getcwd()}/..') #切换工作路径

一旦 import halcon as ha 不报错 

就可以开始验证其他的函数.

打开一个窗口能读取图像并显示就算环境正常:

下面给个简单例子:

r""""""import os,sys,time,cv2
#print(os.environ)
import numpy as np
from ctypes import *sys.path.append("../DLL")
os.chdir(f'{os.getcwd()}/DLL') #切换工作路径
import halcon as ha
os.chdir(f'{os.getcwd()}/..') #切换工作路径def cmd(s="pause"):os.system(s)
def open_window(width, height):if os.name == 'nt':ha.set_system('use_window_thread', 'true')return ha.open_window(row=0,column=0,width=width,height=height,father_window=0,mode='visible',machine='')if __name__ == "__main__":ha.set_system("backing_store", 'false')Image = ha.read_image('1.bmp')Width, Height = ha.get_image_size(Image)print(Width[0], Height[0])image_width  = Width[0]image_height = Height[0]image_width_half  = Width[0]/2image_height_half = Height[0]/2    pix = image_width*image_heightfillmode=['margin','fill']WindowHandle1 =open_window(image_width_half/3, image_height_half/3)ha.set_draw (WindowHandle1, fillmode[1])ha.set_line_width (WindowHandle1, 1)ha.set_color (WindowHandle1, 'red')thres = ha.threshold(Image, 140, 255)ha.disp_obj(thres, WindowHandle1);cmd()binimg=ha.region_to_bin(thres,255,0,image_width,image_height)ha.disp_obj(binimg, WindowHandle1);#ha.write_image (Image, 'bmp', 0, "GG")cmd()  

相关文章:

  • Scrapy全流程(一)
  • CLion开发Qt桌面程序_git的简单使用_小团体
  • (LeetCode 面试经典 150 题) 80. 删除有序数组中的重复项 II (双指针、栈)
  • 信贷域——信贷年审业务
  • Python漂浮的爱心
  • 闲庭信步使用SV搭建图像测试平台:第五课——使用task
  • 【Fargo】mediasoup发送2:码率分配、传输基类设计及WebRtcTransport原理
  • x1+x2=4 X1-X2=2的画图呢?
  • std::shared_ptr 的线程安全性
  • Java基础 6.21
  • cursor中定义cursor rules
  • 【Elasticsearch】运维监控:分片和节点
  • 当数据自己会说话:聚类与分类算法全景解析
  • P1220 关路灯
  • AI大模型学习之基础数学:微积分-AI大模型的数学引擎
  • nn4dms开源程序是用于深度突变扫描数据的神经网络
  • 安装 Labelme
  • 如何使用Ant Design Blazor组件在列表页弹窗增加修改数据
  • C++ 文件读写
  • 并查集(Disjoint-Set Union)详解
  • 2021最火电商平台/关键词优化软件
  • 恶意网站是怎么实现的/下载百度语音导航地图安装
  • wordpress能做成app吗/seo网站建设
  • 做决定的网站/搜索引擎优化的主要工作有
  • 网站备案换公司吗/360排名优化工具
  • 个人网站怎么做cps/bt磁力在线种子搜索神器下载