J'essaie d'exécuter FlyCap2 sur mon NVidia Jetson afin de pouvoir utiliser ma caméra de vision industrielle PointGrey FireFly MV. Je ne peux pas exécuter le programme principal car il manque une bibliothèque de clairières. Une idée de ce qu'est la bibliothèque, et si une telle bibliothèque sera disponible pour l'architecture Linux embarquée ARM7?
ubuntu@tegra-ubuntu:~/Downloads/flycapture.2.7.3.13_armhf/bin$ Sudo ./FlyCap2
./FlyCap2: error while loading shared libraries: libglademm-2.4.so.1: cannot open shared object file: No such file or directory
ubuntu@tegra-ubuntu:~/Downloads/flycapture.2.7.3.13_armhf/bin$
Heureusement, il semble que les bibliothèques Point Grey Imaging fonctionnent bien, et je suis capable de capturer certaines images sur ma caméra FireflyMV en utilisant un autre exemple. Je vais peut-être finir par sauter dans OpenCV, mais ce serait bien de résoudre ce problème de bibliothèque de clairières.
ubuntu@tegra-ubuntu:~/Downloads/flycapture.2.7.3.13_armhf/bin$ Sudo ./FlyCapture2Test
FlyCapture2 library version: 2.7.3.13
Application build date: Oct 9 2014 13:45:38
Number of cameras detected: 1
*** CAMERA INFORMATION ***
Serial number -9420273
Camera model - Firefly MV USB FMVU-03MTM
Camera vendor - Point Grey Research
Sensor - Micron MT9V022177ATM (1/3" 640x480 CMOS)
Resolution - 752x480
Firmware version - 0.9.2.12
Firmware build time - Sun Oct 26 02:34:55 2008
Grabbed image 0
Grabbed image 1
Grabbed image 2
Grabbed image 3
Grabbed image 4
Grabbed image 5
Grabbed image 6
Grabbed image 7
Grabbed image 8
Grabbed image 9
Done! Press Enter to exit...
Ci-dessous se trouve le README fourni avec FlyCapture ARM version. J'ai suivi les instructions d'installation, en déplaçant les bibliothèques appropriées vers/usr/lib.
ubuntu@tegra-ubuntu:~/Downloads/flycapture.2.7.3.13_armhf$ cat README_ARM
FlyCapture2 ARM README
1) Overview
FlyCapture2 has been tested on a pandabard which is available from www.pandaboard.org. FlyCapture2 ARM should also work on other TI OMAP hardware such as the beagleboard. The library and all its dependencies have been compiled using the CodeSourcery cross compiler. This readme will not go in too much detail on how to configure an OMAP device and how to load a linux operating system on it. It will concentrate on installation of the FlyCapture2 library.
2) Prerequisites
* Pandaboard or other OMAP device (recommended is a pandaboard at www.pandaboard.org)
* Linux distribution on the Pandaboard (recommended is ubunut 11.04 at https://wiki.ubuntu.com/ARM/OmapNetbook)
* A PGR usb Camera
* A powered USB hub. The pandaboard does not provide enough power to operate the camera.
3) Installation
1. Copy your flycapture-<version>_arm.tar.gz package on a network or usb drive and copy it to a location on the pandaboard.
2. untar the installation package:
> tar xvfz flycapture-<version>_arm.tar.gz
3. copy all libraries to system folders:
> cd flycapture-<version>_arm/lib
> Sudo cp libflycapture.so* /usr/lib
4. configure permissions to run PGR cameras:
> Sudo sh flycap2-conf
5. follow the instructions that the script takes you through
6. Restart your board.
4) Running FC2 Examples
You should be able to go into the flycapture-<version>_arm/bin folder where you extracted the package and launch any of the examples. They will run and grab some images but will error out when trying to convert between image formats. In the full release versions of FlyCapture2 ARM we will provide examples that run fully but due to the fact that there is no IPP availability on ARM the image conversions will not work in the current state of the library. Also there will be no AVI saving in this version of the library.
5) Compiling software against flycapture.
There are a number of ways you can build your software to run on an OMAP board with flycapture.
1. Build software right on the board using gnu compiler tools by installing in the least the build-essentials package from ubuntu repository.
2. Use a cross compiler to build for the target architecture. One such cross compiler that works well is CodeSourcery.
3. Set up an ARM emulator using QEmu and install ubuntu on it. Then build your software on the virtual machine.
MISE À JOUR: Je pense que cette bibliothèque pourrait avoir quelque chose à voir avec "glade" qui est une description XML d'une interface utilisateur. En effet, en y regardant de plus près, j'ai vu deux fichiers .glade, dont un référençant GTK:
ubuntu@tegra-ubuntu:~/Downloads/flycapture.2.7.3.13_armhf/bin$ ls
AsyncTriggerEx FlyCapture2Test-9420273-4.pgm
C FlyCapture2Test-9420273-5.pgm
CustomImageEx FlyCapture2Test-9420273-6.pgm
ExtendedShutterEx FlyCapture2Test-9420273-7.pgm
FlyCap2 FlyCapture2Test-9420273-8.pgm
FlyCap2.glade FlyCapture2Test-9420273-9.pgm
FlyCapture2GUI_GTK.glade GigEGrabEx
FlyCapture2Test GrabCallbackEx
FlyCapture2Test-9420273-0.pgm HighDynamicRangeEx
FlyCapture2Test-9420273-1.pgm ImageEventEx
FlyCapture2Test-9420273-2.pgm MultipleCameraEx
FlyCapture2Test-9420273-3.pgm
L'installation de libglade2-dev et libgladeui-dev n'a malheureusement pas aidé.
README dans la version Linux x64 de FlyCapture2 dit:
DÉPENDANCES:
- libraw1394-8
- libgtkmm-2.4-dev
- libglademm-2.4-dev
- libgtkglextmm-x11-dev (libgtkglextmm-x11-1.2-dev dans Ubuntu 8.10 et versions ultérieures)
- libusb-1.0 (uniquement dans Ubuntu 9.04 et supérieur)
Ubuntu 12.04:
Sudo apt-get install libraw1394-11 libgtk2.0-0 libgtkmm-2.4-dev libglademm-2.4-dev libgtkglextmm-x11-1.2-dev libusb-1.0-0
Ubuntu 10.04:
Sudo apt-get install libraw1394-11 libgtk2.0-0 libgtkmm-2.4-dev libglademm-2.4-dev libgtkglextmm-x11-1.2-dev libusb-1.0-0
Ubuntu 9.04:
Sudo apt-get install libraw1394-8 libgtk2.0-0 libgtkmm-2.4-dev libglademm-2.4-dev libgtkglextmm-x11-dev libusb-1.0
Ubuntu 8.10:
Sudo apt-get install libraw1394-8 libgtk2.0-0 libgtkmm-2.4-dev libglademm-2.4-dev libgtkglextmm-x11-1.2-dev
Ubuntu 8.04:
Sudo apt-get install libraw1394-8 libgtk2.0-0 libgtkmm-2.4-dev libglademm-2.4-dev libgtkglextmm-x11-dev
libusb-1.0 pour les distributions antérieures à 9.04 peut être obtenu à partir de la section Téléchargements de Point Grey. libusb-1.0 peut ensuite être installé manuellement en double-cliquant sur le package .deb extrait et en suivant les instructions.
Après avoir installé raw1394, vous devrez peut-être ajouter le module raw1394 à charger au démarrage.
Pour ce faire, ajoutez simplement "raw1394" au fichier/etc/modules.