Professional Documents
Culture Documents
HALCON HDevelop
HALCON
1.1
HALCON opreator library
HALCON
fast_match best_match
HALCON
()
HALCON region
region region
HALCON ROI
region
HALCON pattern
pattern HALCON pattern
HALCON (shape-based)
pattern
6.1 HMatchIt
HALCON tuple
tuples HALCON
tuples tuples
tuple tuple HALCON
tuple
HALCON
HALCON
HDevelop
CC++ COM
HALCON 40
http://www.mvtec.com/halcon/
open_framegrabber grab_image
HALCON
HALCON HALCON
HALCON Frame Grabber
Integration Programmer's Manual
1.2 HALCON
HALCON
Operating System
Processor
Compiler
MS Visual Studio 3
Linux 2.2/2.4
gcc 2.95
Solaris 7
SPARC
CC 5.2
IRIX 6.5
MIPS
CC
Alpha
cxx
HALCON
HALCON
1.4
HALCON
1.demo HDEvelop
HALCON
2. HALCON HDevelop
CC++COM Extension package Interface
runtime demo
1. Nodelocked license
2. floating license
license server HALCON
license server server server
Windows NT server Linux Solaris
Windows NT/2000/XP HALCON HALCON server
temporary license
2.1
CD HALCON
http://www.mvtec.com/halcon/download release_note.html
HALCON
UNIX Windows
6
%HALCONROOT%\examples\extension_package\halconuser
2.4
UNIX
$HALCONROOT/examples/extension_package/halconuser
2.1.1
Windows NT/2000/XP
CD nt-x86
Setup.exe Administrator
HALCON
HALCON 2.1.5
ActiveVisionTools
HALCON
( 2.1.5 )
2.1.2 UNIX
mount CD
cdrom root
CD mount /etc/fstab mount
/dev/cdrom /cdrom
CD shell script "install-unix" HALCON
HALCONROOT ( 2.4.2 ) HALCON
CD
32
HALCON
( 2.4.2 )
2.1.3
HALCON 6.0 6.0.1 6.0.2
MVTec's http://www.mvtec.com/halcon/download
HALCON 6.0.2
6.0.2 HALCON dongle ( GLOBEtrotter)
HALCON "license not found"
2.3.5.1
2.1.4 HALCON
%HALCONROOT%
FLEXlm license
bin HALCON HDevelop DLL frame grabber libraries
doc\pdf PDF
examples
images
include C/C++ header
lib HALCON libraries( Windows
.libUNIX .so)
license
2.1.5 HALCON
HALCON Windows NT/2000/XP
%PATH%%HALCONROOT%%HALCONIMAGES%
%HALCONEXTENSIONS% 2.4.1
HALCON COM DLL halconx.dll re-register
DOS shell bin\i586-nt4 ( HALCON) unregister
regsvr32 /u halconx.dll
HALCON
halconx.dll register
regsvr32 halconx.dll
UNIX HALCON $HALCONROOT
$HALCONIMAGES$PATH$LD_LIBRARY_PATH
2.1.6 ActivVisionTools
ActiveVisionTools1.0 2.0 HALCON6.0 ( 6.0.1)
HALCON 6.1 ActivVisionTools HALCON 6.1
ActivVisionTools ActivVisionTools2.0
HALCON 6.1 OCX ActivVTools.ocx
DOS shell ActivVisionTools
bin\i586-nt4 ocx unregist
regsvr32 /u ActivVTools.ocx
ocx CD misc\i586-nt4\avt20.
regsvr32 ActivVTools.ocx
2.2
2.2.1 Windows NT/2000/XP
Windows ( HALCON )
1.
2. HALCON 5.1
HALCON
>>MVTec HALCON>Uninstall
3. 5.2
6.5.2
registry
HDevelop
HKEY_CURRENT_USER>Software>MVTev>Halcon
dongle 2.3.5
10
6.0.2
dongle
6.0.2 HALCON
2.3.5.1
2.2.2 UNIX
HALCON
rm -rf $HALCONROOT
.hevelop HOME ( 2.4.2 )
HDevelop
2.3
HALCON FLEXlm license manager
HALCON ()
runtime license( 2.3.2)
license file 2.3.2 floating license
2.3.4
2.3.4
NT/2000/XP
Pentium III CPU ID Windows NT/2000/XP dongle
dongle
nodelocked floating license 2.3.5
2.3.1.1 HDevelop
demo HDevelop Help>About
CPU IDdongle
11
6.5.3
2.3.1.2
lmhostid
12
lmhostid -flexid
dongle
2.3.2 Runtime license HALCON
HALCON "Basic operators""Image/Region/XLD
management" HALCON "Background Estimation""1D Bar
Code Reader" runtime
HDevelop File>Moduals
"Save" .mod
CC++COM get_moduals
13
nodelocked license
#################################
# MVTec (ID: FLEXID=7-b285ff7f) #
#################################
FEATURE MVTec_Halcon mvtecd 6.1 permanent 0 3C574319AF86C4A5DE4A \
VENDOR_STRING=65535 HOSTID=FLEXID=7-b285ff7f ck=35
14
port port
port number
HALCON license file "SERVER"
host name port number license server license
server port name license manager daemon
%HALCONROOT%\FLEXlm\%ARCHITECTURE%\mvtecd
( ARCHITECTURE 2.4 )
license file
HALCON HALCON c:\program
Files\MVTec\Halcon c:\progra~1\MVTec\Halcon
license manager daemon
%HALCONROOT% Windows
HALCON service ""
liscense manager daemon
"%HALCONROOT%\FLEXlm\i58-nt4\installs" -r -n "HALCON Licenses"
2.3.5 dongle
dongle windows 6.0.2 USB dongle
dongle ID "FLEXID=6-""FLEXID=7-" USB dongle ID
"FLEXID=9-"
16
2.3.5.1 dongle
2.1.1 HALCON
sentinel
HALCON DOS
%HALCONROOT%\FLEXlm\i568-nt4\flexid6-7\win_nt setupx86.exe
Functions>install
Administrator
parallel port
HALCON ()
dongle HALCON
CD FLEXlm\i586-nt4\flexid6-7\win_nt
6.0.2
2.1.3 2.2.1
setupx86.exe%HALCONROOT%\FLEXlm\i586-nt4\dongle
HALCON 6.0.2
2.2.1 HALCON 6.0.2
2.1.3 setupx86.exe
%HALCONROOT%\FLEXlm\i568-nt4\flexid6-7\win_nt
HALCON setupx86.exe
CD FLEXlm\i586-nt4\dongle CD
HALCON
hinstall
hinstall
hinstall -info
hinstall -install
hinstall -remove
Administrator
HALCON dongle hinstall.exe
HALCON CD
FLEXlm\i586-nt4\flexid9
2.4
%HALCONROOT%\help
HALCON
%HALCONROOT%\doc\html\reference\hdevelop
18
%HALCONROOT%\lut
look-up table
%HALCONROOT%\ocr
trained fonts
%HALCONROOT%\license
license KEY license.dat
%HALCONROOT%\images
HALCONIMAGES HALCON
HALCONIMAGES
ARCHITECTURE
HALCON Windows %ARCHITECTURE%
i586-nt4
HALCON hdevelop.exehalcon.dll
%HALCONROOT%\bin\i586-nt4 link library halcon.lib
%HALCONROOT%\lib\i586-nt4
HALCONEXTENSIONS
( extension packages)
package linked library
help HTML extension package 2.5
HALCONSPY
HALCON HALCONSPY HALCON
HALCON Spy set_spy ("mode"
"on")
%HALCONSPY% linked HALCON
6.4
PATH
%HALCONROOT%\bin\i586-nt4 %HALCONROOT%\FLEXlm\i586-nt4
PATH
19
2.4.2 UNIX
UNIX shells setenv <variable><value>
export <variable>=<value>
$HALCONROOT\lut
look-up table
$HALCONROOT\ocr
trained fonts
$HALCONROOT\license
license KEY license.dat
$HALCONROOT\images
HALCONIMAGES HALCON
HALCONIMAGES
UNIX
ARCHITECTURE
i586-linux2.2
sparc-sun-solaris7ARCHITECTURE hdevelop
$HALCONROOT/bin/$ARCHITECTURE$HALCONROOT/bin/$ARCHITECTURE
20
i586-linux2.2
sparc-sun-solaris7
mips-sgi-irix6.5
alpha-compaq-osf5.1
on Alpha processors
PATH
HDevelop HALCON
$HALCONROOT/bin/$ARCHITECTURE PATH
LD_LIBRARY_PATH
HALCON library $HALCONROOT/lib/$ARCHITECTURE
LD_LIBRARY_PATH
HDevelop
HALCONEXTENSIONS
( package) package
linked library help HTML
extension package 2.5 Extension package
Programmer's Manual
HALCONSPY
HALCON HALCONSPY HALCON
HALCON Spy set_spy ("mode"
"on")$HALCONSPY linked
HALCON 6.4
DISPLAY
X
HOME
Parallel HALCON 6.0 beta check_par_hw_potential
$HOME.halcon_par_info
21
package
(HALCONIMAGES)
22
23
HDevelop
HDevelop
bonding balls HALCON
package
%HALCONROOT%\examples\hdevelop\Manuals\GettingStarted\example.dev
ROI
pattern
control struct
HDevelop
bonding balls
24
3.1
HDevelop GUI
HDevelop
25
File
Edit
Excute
Visualization
operators
Suggestions
Windows
Help
HDevelop HDevelop
HDevelop
HDevelop
HDevelop HALCON
()
HDevelop
New
Open
Save
program windows
HDevelop
HDevelop
Cut
Copy
paste
Run
Step
Stop
HDevelop
HDevelop
Avtivate
Deactivate
Reset
set parameters
visualization
Pixel info
pixel info
Zooming
26
3.1.2 program
HDevelop program
HDevelop
program counter( PC)(breaking point)
3.1.3
combo box
3.1.4
ROI
3.1.5
Visualization graphic
3.2 HDevelop
HDevelop program HDevelop
Shift
()
Operator
() Enter
OK
Apply
PC(Program counter)
HDevelop Step Run
27
Stop
CC++COM
File>Save as
3.3
HALCON object
( Operators>Image>FrameGrabber)
( File>Image File>Read Image)
( Operators>Image>Creation)
read_image
read_image Operators>File>Images
window "Operator" Enter
image object "Die"
28
"Die3"
read_image(Die"Die3")
OK program window
"Die" image object
HALCONIMAGES
%HALCONROOT%\images
3.4
Visualization>Size Window>Original
window ID HDevelop Width
Height ""
dev_open_window(00-1-1blackWindowID)
OK
"Active"
"Die"
dev_set_paint('3D-plot')
Visualization>Set Parameter zoom
"Interactive"
"Reset"
29
3.5
ROI
ROI
ROI
ROI
ROI
Operators>Graphics>Drawing draw_rectangle1
HDevelop
zoom Row1Column1Row2
Column2 ROI HALCON object
Operator>Regions>Creation gen_rectangle1 Row1
Column2 "ROI"
30
region region
Visualization dev_*.
Visualization>Color Visualization>Line>Width
Visualization>Draw
ROI
HALCON ROI Operators>Graphics>Drawing
Draw_region
draw_region(ROIwindowID)
draw_rectangle1(
) Edit>Deactivate gen_rectangle1
ROI
ROI
3.8
31
ROI reduce_domain(Operators>Image>Domain)
Die ROI region
reduce_domain(DieROIImageReduced)
mean_image(ImageReducedImageMean1111)_
ImageReduced ROI Clear
ImageReduced
reduced
Operators>Filter>Smoothing mean_image"Die"
Clear mean_image
ImageReduced
ROI PC(program counter) draw_rectangle
draw_region () RUN
BP(break point) Ctrl
3.6
HALCON HALCON
?
HALCON
"thresh""threshold "
32
combo box
HALCON HTML Help>HTML
Operator
HTML
Suggestion>Keywords
3d-projectionArcs
HTML
Help
Suggestion>Altinatives
Suggestion>Successor
successor threshold
33
3.7
combo box
HDevelop
Operator>segmentation threshold
combo box "Die" lower upper threshold
Brighregion
visualization mode
"Draw""Fill"( Color
)"Die""Brightregion"
"BrightRegion"
Apply
OK program
Clear
34
3.8 ROI
"Die" threshold 128
255 raw segmentation ROI bonding
balls shapr_trans"Brightregion""rectangle2"
"Brightregion" region "ROI"
3.5 reduce_domain ROI
threshold(Die,Brightregion,128,255)
shape_trans(Brightregion,ROI,'rectangle2')
reduce_domain(Die,ROI,DieROI)
DieROI
3.9
region "RawSegmentation"
""
35
fill_up_shape( Operator>Regions>Transformation)
threshold(DieROI,RawSegmentation,0,50)
fill_up_shape(Rawsegmentation,Wires,'area',1,100)
Wires RawSegmentation
open_circle
opening_circle(Wires,BallRegion,15.5)
Wires BallRegion
connection
connection(BallRegionBalls)
BallRegion
36
Balls Visualization>Colored
HALCON
tuple
select_shape
Operators>Regions>Features "circularity"
select_shape(BallsFinalBalls'circularity''and'0.851.0)
Die FinalBalls FinalBalls
dev_open_window(00-1-1blackWindowID)
read_image(Die,'die3')
threshold(Die,Brightregion,128,255)
shape_trans(Brightregion,ROI,'rectangle2')
reduce_domain(Die,ROI,DieROI)
threshold(DieROI,RawSegmentation,0,50)
fill_up_shape(Rawsegmentation,Wires,'area',1,100)
opening_circle(Wires,BallRegion,15.5)
connection(BallRegionBalls)
select_shape(BallsFinalBalls'circularity''and'0.851.0)
3.10
bonding balls
count_obj( Operators>Object>Information )
count_obj(FinalBalls,NumBalls)
3.5 draw_rectangle1 NumBallsHALCON
(Operators>Regions>Features)
smallest_circle region
smallest_circle(FinalBallsRowColumnRadius)
37
FinalBalls RowColumnRadius
meanRadius := sum(Radius)/|Rdaius|
area_center(
Operators>Regions>Features ) assign
minArea
area_center(FinalBallsAreaRowCenterColcenter)
minArea
:= min(Area)
tuple
disp_circle(WindoIDRowColumnRadius)
3.11 pattern
bonding ball
threshold ROI
pattern matching
1. template
2. template
38
template
dev_open_window(0300-1-1'black'WindowID)
window ID
read_image(Die4'C:\\Program Files\\MVTec\\HALCON\\images\\die4.tif')
draw_rectangle1(WindowIDRow1Column1Row2Column2) template
gen_rectangle1(ROIRow1Column1Row2Column2)
reduce_domain(Die4ROIImageReduced)
ROI ImageReduced
ImageReduced bonding ball template
Operators>Filter>Match create_template
create_template(ImageReduced54'sort''original'templateID)
matching template assign
TemplRow := (Row1+Row2)/2
TemplCol
:= (Col1+Col2)/2
matching
matching
39
fast_match Operators>Filter>Match
fast_match(Die4MatchestemplateID20)
matches MaxError
connection(Matches1BallROI)
region count_obj
count_obj(BallROINumBall)
best_match connection
BallROI region tuple
region Operators>Image>Domain
add_channels
add_channels(BallROIDie4BallImage)
best_match(BallImageTemplateID20'true'RowcolumnError)
RowColumnError
()
Operators>Graphics>Output
disp_rectangle1
disp_rectangle1(WindowIDRow+Row1-TemplRowColumn+Column1-TemplCol
Row+Row2-TemplRowColumn+Column2-TemplCol)
40
template clear_template template
3.12
HALCON
best_match
MaxError
Row Column Error
Error
RealNumBalls := 0
iend value NumBalls
for i := 1 to NumBalls by 1
if (Error[i-1]<255)
disp_rectangle1(WindowIDRow[i-1]+Row1-TemplRow
Column[i-1]+Column1-TemplCol
Row[i-1]+Row2-TemplRowColumn[i-1]+Column2-TemplCol)
RealNumBalls := RealNumBalls + 1
end if
endfor
(
)
41
HALCON
4.1
domain region
domain domain
domain
domain
ROI HALCON
autobahn.dev
%HALCONROOT%\examples\hdevelop\Applications\Sequences
43
image object
region
44
4.2.3 region
region region
region
region region
region
region
closing_circle (HDevelop fin2.dev
%HALCONROOT%\examples\hdevelop\Applications\FA)
HALCON
region
region
45
4.2.4
etended ine escription
region region
XLD ()
XLD
edge_sub_pixlines_gauss
Extension Package Programmer's Manual
4.3
HALCON
open_framegrabber
port
info_framegrabber
set_framegrabber_param
get_framegrabber_param
grab_image grab_image_async
()
grab_image_start
close_framegrabber close_all_framegrabbers
46
set_feamegrabber_lut get_framegrabber_lut
lookup table
HALCON open_framegrabber
grab_image
HALCON MVTec
HALCON
http://www.mvtec.com/halcon/framegrabber DLL
4.3.1
HALCON grab_image
PAL
ms (trigger)
grab_image_start
grab_image_async
grab_image_async
grab_image_async
grab_image_start
()()
HALCON frame_grabber
external trigger
47
asynchronously resetable
asynchronously resetable
4.3.3
Volatile
grab_image grab_image_async
HALCON
history
NTSC ms
HALCON volatile grabbing mode
HALCON
4.3.4
HALCON
HALCON HALCON
Frame Grabber Intergration Programmer's Manual
frame grabber API HALCON
buffer HALCON gen_image1_extern
48
4.4
HALCON
32768*32768
100000
100000
1000
tuple
1000000
30000
10000
-32768 +32768
1024
49
Parallel HALCON
parllel HALCON
hcheck_parallel.exe
%HALCONROOT%bin%ARCHITECTURE%
Parallel HALCON check_par_hw_potenial
()
Windows NT/2000/XP Registry UNIX
50
.halcon_par_info $HALCONROOT
check_par_hw_potenial
Windows2000 administrator group privilege 'Power User'
UNIX HALCON .halcon_par_info
check_par_hw_potenial
hcheck_parallel
5.1.2
Parallel HALCON
tuple level
tuple tuple
tuple
tuple
channel level
domain level
domain
HALCON Reference Manual "Parallelization
Information" tuplechanneldomain
51
5.2.1 reentrancy
Reenrancy
reenrant
data
local
Windows NT/2000/XP
local ()
IO Windows
open_window
draw_circle
local
IO write_imageread_imagefwrite_stringfread_string
HALCON update_bg_esti
give_bg_esti HALCON
data
mutual exclusive
combine_road_xldconcat_ocr_trainf
completely exclusive
OCR/OCV
OCR classificaion reser_obj_db
reset_obj_db
52
5.3
5.3.1 Reentrancy
set_system HALCON
set_system('parallelize_operators''false')
reentrancy
set_system('reentrant''false')
'true'
reentrancy automatic parallelization
debugging
Parallel HALCONHALCON
53
54
6.1 HALCON
HDevelop Help>HALCON News (WWW)
MVTec extension package HALCON
6.3
HDevelop
HDevelop
System suggestions
operator knowledge base
predecessors successors
altinatives reference
debugging
HALCONSPY 2.4.2
Result Visualization
HDevelop
55
6.5
HDevelop Parallel HALCON
6.5.1
Registration of halconx.dll failed
HALCON/COM library halconx.dll self-register
Microsoft atl.dll register ( library
%SystemRoot%\system32 C:\WINNT\sysem32) library
DOS CD misc\i586-nt4
56
>E:
>cd misc\i586-nt4
>reg-halconx atl.dll
>reg-halconx
license manager daemon
floating license FlEXlm license daemon
DOS ()
"%HALCONROOT%\FLEXlm\i586-nt4\installs" -n "HALCON License"
-c "%HALCONROOT%\license\license.dat"
-l "%HALCONROOT%\license\license.log"
-e "%HALCONROOT%\FLEXlm\i586-nt4\lmgrd.exe"
>>
"HALCON License"
service
daemon
"%HALCONROOT%\FLEXlm\i586-nt4\installs" -r -n "HALCON License"
6.5.2
Unregistration of halconx.dll
register HALCON/COM halconx.dll
HALCON halconx.dll unregister
DOS CD misc\i586-nt4
>E:
>cd misc\i586-nt4
>reg-halconx /u
license manager daemon
2.2.1 float license HALCON 5.0 5.1
FlEXlm license daemon uninstall
DOS
"%HALCONROOT%\FLEXlm\i586-nt4\installs" -r -n "HALCON License"
DOS HALCON
57
c:\Pregram Files\MVTec\Halcon
()
c:\Progra~1\MVTec\Halcon\FLEXlm\i586-nt4\installs -r -n "HALCON License"
()
"c:\Program Files\MVTec\Halcon\FLEXlm\i586-nt4\installs"-r -n "HALCON License"
cd "%HALCONROOT%\FLEXlm\i586-nt4"
Internal Error
"Inter Error,unable to load or call external DLL.Please contact your distributor for more
information"
%HALCONROOT%
1.%HALCONROOT% HALCON
>>>> DOS
echo %HALCONROOT%
HALCON
2.
%HALCONROOT% Unins.isu
%HALCONROOT%\FLEXlm\i586-nt4\
HalconUninst.dll
Uninst.isu
58
4. regedit uninstall
uninstallation failed
HKEY_LOCAL_MACHINE->SOFTWARE->MVTec
3.
%SystemRoot%\Profiles\All Users\start Menu\Programs\Halcon
%SystemRoot% c:\winnt
59
4. Halcon
%HALCONROOT%
6.5.3 license
license license file
dongle ( 2.3.1 ) license file ( 2.3.3
)
60
No license found
%HALCONROOT%\license\license.dat
license
floating license
lost connection to license server
license server server
PATH$HALCONROOT/bin/$ARCHITECTURE
lib*:can't open file
UNIX LD_LIBRARY_PATH( 2.4.2 )
No help file for package<package > in directory <>
%HALCONROOT%\help\ help
HALCONROOT
HDevelop
Help file for package<package-name>is corrupt
package system HALCONROOT %HALCONROOT%\help\
package help
Can't open display
DISPLAY X-server
62
tuple '(-array)'
6.5.6
UNIX
HALCON
Linux SuSe 7.0
backing-store
63