Excerpt | ||||
---|---|---|---|---|
|
Introduction
For more information about the software Halcon from MVTec we refere to threir office webside: https://www.mvtec.com/products/halcon/
Info |
---|
Halcon can be preinstalled on the camera under the location |
Halcon Examples on iam camera
You need to open an SSH Shell connection to the camera. For some example you also need to have X-Server support.
|
There are some examples preinstalled to the iam camera. They can be found under the location
|
On top of the filesystem the README.md can be found.
There is detalied information about the provided samples.
structure of the test_halcon folder:
The folder contains the file system below. On can see that the three examples do have a similar file structure.
|
Description of samples:
test_halcon_aniso_test:
This sample is derived from find_aniso_shape_model.hdev (MVTec Software GmbH).
This sample is designed for testing the performance of the FindAnisoShapeModel() function.
With 50 loops a mean value of the consumed time of FindAnisoShapeModel() is evaluated.
OPTIONS:
NO_WINDOWS ; if defined no windows are shown
test_halcon_live_view:
This sample is derived from error_handling_timeout.cpp (MVTec Software GmbH).
This sample is designed for testing the live view of the iam platform.
OPTIONS:
SAVE_IMAGE ; if defined, a image is saved at the end of program
SET_EXPOSURE_TIME ; if defined, a exposure time is set
test_halcon_sw_trigger:
This sample is derived from error_handling_timeout.cpp (MVTec Software GmbH).
This sample is designed to show the software trigger functionality.
This sample aquires 100 software triggered frames.
No live view is implemented.
OPTIONS:
NONE
Execute one of the provided Halcon examples
The binarys of the brebuild examples can be found in the ../bin
directory of each example project. The test_halcon_live_view
can be executed by the commands below. The two others examples can be executet in the same way.
|
Tip |
---|
The |
Info |
---|
The two other examples |
Compiling the provided Halcon examples
It is possible to compile the examples on a Linux Host system (e. g. by using the provided virtual machine image) or native on the camera (over OpenSSH) both unsing makefiles.
Tip |
---|
For cross-compiling, you have to source profile_halcon: You can test successful sourcing with: You should see: |
The next section described the process of building the software trigger project as an example.
Build e. g. the software trigger example
Info |
---|
The steps discribed below are both the same on native and cross compile enviroment. |
navigate into the makfile directory
|
Remove the prebuild binary by execute the command make make clean
and build it from source by make
.
Info |
---|
For more details: The exact behavior of both commands are defined in the |
|
The compiled binary can be found in the ../bin
directory and can be executed as follow
|
Info |
---|
The other examples |
Building your own Halcon examples:
Prepare Makefiles
Possibly the easiest way is to copy the complete folder of one of the examples and rename it to your project name.
Code Block |
---|
cd /home/root/040530_test_halcon/cpp/ mkdir your_project_name cp -vr test_halcon_sw_trigger/* your_project_name |
Now you can edit and rename the given source file from the director your_project_name/source/
or simply replace it by your own cpp file.
Info |
---|
On will get a well-arranged file structure if you use the |
Code Block |
---|
cd /home/root/040530_test_halcon/cpp/your_project_name/makefiles/ make clean |
|
Tip |
---|
Since you are analysing an monochrome image sensor it is important to use a monochrome pixel fomat. Therfore the given examples do all show how to configrure the pixel format in source code. Like the listening from |
Code Block |
---|
try { acqdevice.SetFramegrabberParam("PixelFormat", "Mono8"); } catch (HException &except) { cout << "---> PixelFormat failed!\n"; cout << "---> Cause: " << except.ErrorMessage() << "(HALCON error " << except.ErrorCode() << ")\n"; cout << "---> CloseFramegrabber!\n"; acqdevice.CloseFramegrabber(); return except.ErrorCode(); } |
You also need to edit the makefile as discribed below at line 38 by the name of your cpp source file.
|
Using make command
navigate into the makfile directory and exexute the make
command.
|
Info |
---|
You may need to remove your binaries were builed before by execute the command |
The binary can be found now in the ../bin
directory and can be executed by the commands below.
|
Attachments
Attachments | ||||
---|---|---|---|---|
|
🔍 References
🔗 related content
👥 contact NET
Insert excerpt | ||||||
---|---|---|---|---|---|---|
|