MVTec Halcon Wrapper

MVTec Halcon function mex-wrapper
Updated 31 Jan 2017

View License

MVTec Halcon (12) is an image processing library used in machine vision applications.
At we use both Halcon and Matlab together. Therefor we wrapped all Halcon operators into Matlab Mex-files (c++ code). By compiling the code (compile_cpp_code.m) you can use the Halcon operators in Matlab.
I = transpose(imread('lena.tif'));
Imedian = hMedianImage (I, 'circle', 3, 'continued');
figure, imshow(transpose(Imedian.image))
1. To use the software install Halcon Developer version. A version including temporary license can be obtained at
2. Please note, this wrapper is also compatible with Halcon 11, Halcon 13 ... but in that case first run "generate_cpp_code.m" followed by "generate_help_files.m" followed by "compile_cpp_code.m")

3.If you use Matlab 64-bits, install Halcon x64 and 64-bit c++ compiler.
When using Matlab 32-bits also install Halcon 32-bits.

4. Note image-data is stored row-wise in Halcon and column-wise in Matlab. Thus transpose or permute(I,[2 1 3]) an image from Matlab before using in Halcon and the other-way around

5. XLD's are currently not supported.

6. Halcon is sensitive to input datatypes, thus don't use hFunction("100") or hFunction(100), when Halcon expect an integer, then use hFunction(int32(100)). A mixed tuple equals a cell array like {"true", "red",int32(123),3.14}

Cite As

Dirk-Jan Kroon (2024). MVTec Halcon Wrapper (, MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2014a
Compatible with any release
Platform Compatibility
Windows macOS Linux
Find more on GPU Computing in Help Center and MATLAB Answers

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!