《zw版·ddelphi与halcon系列原创教程》Halcon的短板与delphi
【《zw版·delphi与Halcon系列原创教程》
Halcon的短板与delphi
看过《delphi与Halcon系列》blog的网友都知道,笔者对Halcon一直是非常推崇的,简直是天下第一,无所不能。
的确,Halcon是目前蓝星上最强的图像库,也许某些国家军用卫星的图像库,精度会高一点,这个只能猜测。
Halcon毕竟只是图像库而已,作为开发平台,与专业的delphi、vs相比,还是有很大差距的。
有经验的用户,特别是从事二次开发的外包团队,采用Halcon。有时总会有些束手束脚,力不从心的感觉,而且,问题往往不是出现在技术瓶颈,而是一些简单、常用的细节上面。
Halcon第一定位,始终是图像工程方面,提供一站式解决方案,这点,无疑是行业第一。
具体而言,作为平台级的图像开发工具,Halcon存在以下问题:
- :: HDevelop对于用户自定义变量支持很差,赋值只能采用专用的assign函数,不支持左侧等号‘=’模式,做过解释器、编译系统的人都知道,左侧等号‘=’赋值,看起来简单,其实非常复杂繁琐,变化万千。Halcon很聪明,采用了delphi的独特的双字符':=',作为等号,大大简化了内核相关模块的开发。这些,对于偏重于工程定位Halcon,影响不大,不过对于大型图像系统,不仅代码量增加不少,架构设计也复杂很多。
- :: HDevelop本身对于多个模块、大型的图像应用,支持很差,v12官方Change明确指出,Halcon,对于大型的定义是‘500’行代码。500行?Halcon一个delphi的接口程序,源码就超过7w行,500行显然是无法完成一个复杂系统的。
- :: Halcon虽然提供了com、net控件,支持c、vb、delphi等二次开发,但对于最简单方便,与内置脚本天生一体的delphi,却支持最差,不仅输出代码,没有delphi格式,连文档、demo方面,都尽量简化,官方貌似只提供了一个Matching示例程序,就万事大吉了。
- :: bug、调试,非常麻烦,连免费的python都比不上,更不用说专业的delphi、vs了,当然对于500行内的‘一对一’应用模块而言,这些还可以接受。
- :: 页面窗口布局,类似matlab,当然图像系统,本身布局极其复杂,matlab、ps、cad、maya、blender,3ds,各自不同,不过,Hacon还在采用delphi7时代的多窗口模式,而不是现代的dock设计,这点就有些反人类了,matlab很像在v2010版以前,就改成了dock模式。(附图,是笔者推荐的HDevelop窗口布局)

不过,Halcon的这些短板,刚好是delphi、c+vs的强项,双方互补性非常强。
实际工程设计当中,往往把Halcon作为刀锋,处理专业的技术难点、瓶颈,而delphi作为整个系统架构的设计、数据的维护等等。
所以,delphi与Halcon,的确是图像工程的神级搭配。
【《zw版·delphi与halcon系列原创教程》,网址,cnblogs.com/ziwang/】
《zw版·ddelphi与halcon系列原创教程》Halcon的短板与delphi的更多相关文章
- 《zw版·delphi与Halcon系列原创教程》THOperatorSetX版hello,zw
<zw版·delphi与Halcon系列原创教程>THOperatorSetX版hello,zw 下面介绍v3版的hello,zw. Halcon两大核心控件,THImagex.THOpe ...
- 《zw版·delphi与halcon系列原创教程》zw版_THOperatorSetX控件函数列表 v11中文增强版
<zw版·delphi与halcon系列原创教程>zw版_THOperatorSetX控件函数列表v11中文增强版 Halcon虽然庞大,光HALCONXLib_TLB.pas文件,源码就 ...
- 《zw版·delphi与halcon系列原创教程》zw版_THImagex控件函数列表
<zw版·delphi与halcon系列原创教程>zw版_THImagex控件函数列表 Halcon虽然庞大,光HALCONXLib_TLB.pas文件,源码就要7w多行,但核心控件就是两 ...
- 《zw版·delphi与halcon系列原创教程》hello,zw
<zw版·delphi与halcon系列原创教程>hello,zw 按惯例,第一个程序是‘hello’ 毕竟,Halcon是专业的图像库,所以我们就不用纯文本版的,来一个专业版.Halco ...
- 【《zw版·Halcon与delphi系列原创教程》Halcon图层与常用绘图函数
[<zw版·Halcon与delphi系列原创教程>Halcon图层与常用绘图函数 Halcon的绘图函数,与传统编程vb.c.delphi语言完全不同, 传统编程语言,甚至cad ...
- 《zw版Halcon与delphi系列原创教程》发布说明
<zw版Halcon与delphi系列原创教程>发布说明 zw转载的<台湾nvp系列halcon-delphi教程>,虽然很多,不过基本上都是从cnc.数控角度的demo.. ...
- 【《zw版·Halcon与delphi系列原创教程》 zw_halcon人脸识别
[<zw版·Halcon与delphi系列原创教程>zw_halcon人脸识别 经常有用户问,halcon人脸识别方面的问题. 可能是cv在人脸识别.车牌识别方面的投入太多了. 其实,人脸 ...
- 《zw版·Halcon-delphi系列原创教程》 zw版-Halcon常用函数Top100中文速查手册
<zw版·Halcon-delphi系列原创教程> zw版-Halcon常用函数Top100中文速查手册 Halcon函数库非常庞大,v11版有1900多个算子(函数). 这个Top版,对 ...
- 《zw版·Halcon-delphi系列原创教程》 Halcon分类函数017·point点函数
<zw版·Halcon-delphi系列原创教程> Halcon分类函数017·point点函数 为方便阅读,在不影响说明的前提下,笔者对函数进行了简化: :: 用符号“**”,替换:“p ...
随机推荐
- JAVA中使用JSON进行数据传递
最近在做一个基于JAVA Servlet的WEB应用以及对应的Anroid应用客户端的开发工作. 其中,在接口的访问和数据的传输方面使用的比较多的是使用JSON对象来操作格式化数据:在服务器端采用JS ...
- magento url rewrite using config.xml
magento url rewrite using config.xml 2012-08-03 14:34:22| 分类: magento|举报|字号 订阅 郁闷了两天啊 http://12 ...
- LightOj1074 - Extended Traffic(SPFA最短路)
题目链接:http://lightoj.com/volume_showproblem.php?problem=1074 题意:有n个城市,每个城市有一个拥堵值a[i],m条单向路u到v,从u到v所需时 ...
- Selenium2学习-028-WebUI自动化实战实例-026-获取页面元素值或者元素属性值
在自动化脚本编写过程中,经常需要获取页面元素的文本进行判断,以便对于不同的文本进行不同的处理.比如:很多的购物网站,加入购物车的按钮是有多个状态的(加入购物车.到货通知.暂不销售等),那么在实际的操作 ...
- JavaScript实现dropdownlist选定值后将选定值的key与value填入两个textbox中
<script language="javascript" type="text/javascript"> var txtText0 = " ...
- 【Android Studio快捷键】之导入相应包声明(import packages)
可能import 单个声明的快捷键大家都很容易找到,Alt+Enter.但是如果我要一次性import文件中所有的声明,这个快捷键是什么呢,找啊找的,就是没找到,以前在Eclipse是Ctrl+1,但 ...
- 24C02 Twr
连续写24C02,只有第一次能够成功,后面写都失败了.这次调整写的时间间隔.调成了5ms,才成功. 查看datasheet,发现有一个tWR参数.表示写的最小时间间隔.这个时间应该是内部写入所需要的时 ...
- iOS ASIHTTPRequest 请求https
iOS 终端请求服务端数据时,为了保证数据安全,我们一般会使用https协议加密,而对于iOS的网络编程,我们一般会使用开源框架:ASIHTTPRequest,但是如果使用传统的http方式,即使忽略 ...
- C语言课本实例
1. 将一维数组的内容倒顺 #include <stdio.h>void func(int *s,int n){ int i,temp; for(i=0;i<n/2;i++) { t ...
- 使用jQuery为表单添加回车事件
$(document).keypress(function(e){ if(e.which==13){ checkUserForm(); } });