Runtime Opencv HighGui Erreur- "ERREUR HIGHGUI: V4L / V4L2: VIDIOC_S_CROP". Opencv cross compilé. Hôte = 64bit Ubuntu 12.04. Cible = ARM-Cortex-A9
Je suis un débutant en OpenCV et essayer de mon mieux pour obtenir une simple application en cours d'exécution sur une plate-forme intégrée. Je cross-compilé OpenCV 2.4.4 et construit WITH_GTK=SUR, WITH_UNICAP=SUR, WITH_V4L=en cas de besoin pour la caméra et le support de l'IHM graphique. L'exemple de code suivant cross-compile sur l'hôte:
#include <opencv/cv.h>
#include <opencv/highgui.h>
using namespace cv;
int main(int, char**)
{
VideoCapture cap(0); //open the default camera
if (!cap.isOpened()) //check if we succeeded
return -1;
Mat edges;
namedWindow("edges", 1);
for (;;) {
Mat frame;
cap >> frame; //get a new frame from camera
cvtColor(frame, edges, CV_BGR2GRAY);
GaussianBlur(edges, edges, Size(7, 7), 1.5, 1.5);
Canny(edges, edges, 0, 30, 3);
imshow("edges", edges);
if (waitKey(30) >= 0)
break;
}
return 0;
}
Compilation de cette façon pour la liaison statique:
arm-linux-gnueabi-g++ -mcpu=cortex-a9 -mfpu=neon -statique opencv_camshow.cpp -o exe -I/home/om/OpenCV-2.4.4/plates-formes/linux/build_soft/installer/include -L/home/om/OpenCV-2.4.4/plates-formes/linux/build_soft/install/lib -L/home/om/OpenCV-2.4.4/plates-formes/linux/build_soft/3rdparty/lib -lopencv_calib3d -lopencv_features2d -lopencv_flann -lopencv_imgproc -lopencv_core -lopencv_contrib -lopencv_highgui -lopencv_ml -lopencv_video -lopencv_flann -lopencv_photo -lopencv_videostab -pthread -lm -lrt-lzlib -statique
Là est le problème. Lorsque j'essaie d'exécuter le fichier exécutable " exe " sur la cible, je reçois cette erreur d'exécution:
HIGHGUI ERREUR: V4L/V4L2: VIDIOC_S_CROP
OpenCV erreur: Erreur non spécifiée (La fonction n'est pas implémentée. Reconstruire la bibliothèque avec Windows, GTK+ 2.x ou support de Carbone. Si vous êtes sur Ubuntu ou Debian, installez libgtk2.0-dev et pkg-config, puis re-lancer cmake ou script de configuration) dans cvNamedWindow, fichier /home/om/OpenCV-2.4.4/modules/highgui/src/window.cpp ligne 652
résilier appelé après avoir jeté une instance de " cv::Exception
ce(): /home/om/OpenCV-2.4.4/modules/highgui/src/fenêtre.rpc:652: erreur: (-2) La fonction n'est pas implémentée. Reconstruire la bibliothèque avec Windows, GTK+ 2.x ou support de Carbone. Si vous êtes sur Ubuntu ou Debian, installez libgtk2.0-dev et pkg-config, puis re-lancer cmake ou script configure en fonction cvNamedWindow
J'ai ré-installé libgtk2.0-dev, pkg-config existe & re-compilé OpenCV , mais cela n'a pas aidé. S'il vous plaît laissez-moi savoir si quelqu'un sait comment résoudre ce problème. Merci à l'avance. ~Om
Plus d'infos:
J'ai réalisé ce qui est à l'origine de ce problème, mais pas encore fixé...
À partir de ma compréhension du problème réside dans le cmake scripts de opencv. Elle ne reconnaît pas l'existence de GTK, et donc de la croix-compile sans gtk soutien. Cela, après vous être assuré que le bras basé sur gtk bibliothèque est présent dans la chaîne de traitement du dossier lib et son chemin d'accès exportés vers les chemins d'accès.
source d'informationauteur om9
Vous devez vous connecter pour publier un commentaire.
Après avoir fait de la
cmake
déclaration de Vérifier si la sortie decmake
comprend le texte suivant:V4L/V4L2: Using libv4l
.Si elle n'est pas là, puis installer
v4l2ucp
v4l-utils
etlibv4l-dev
à partir du gestionnaire de paquets synaptic. Puiscmake
et de construire à nouveau.Cela a fonctionné pour moi, mais j'ai été en utilisant OpenCV avec des bindings python sur Ubuntu 12.04.
Afin de faire de la compilation croisée, vous devez dire à pkg-config pour rechercher le chemin d'accès approprié (par défaut, ce sera votre hôte config/.fichiers pc!)
De pkg-config site web
Opencv highgui erreur
Avoir à réinstaller opencv utilisation de cmake