Opencv

Compiling OpenCV 3.0 alpha with CUDA support on MacOS X

A quick tip for people who have some troubles compiling OpenCV 3.0 alpha on MacOS X.

Book review: Instant OpenCV for iOS

Disclaimer: I’ve been a reviewer for this book. About the book Some context A few months ago, I was kindly asked to review a book to-appear that was entitled Instant OpenCV for iOS, that is now available (at least as an eBook). The book is edited by Packt Publishing, where I bought a few books before, in particular two previous books about OpenCV, an introductory one (by R.

Nouveaux types dans OpenCV

Etrennant une nouvelle machine, j’essayais de recompiler gentiment mon code de thèse avec la dernière version d’OpenCV obtenue depuis github. Et là, horreur, fureur et tremblement ! Les scripts de compilation se bloquent à de nombreuses reprises sur des symboles inconnus, et même llvm n’arrive pas à suggérer de substitutions pertinentes… Un tour rapide sur la page de doc suffit à voir qu’elle n’est pas alignée sur les dernières révisions… J’ai donc dû aller explorer un peu le code source.

OpenCV + iOS tutorial

A short post to let you know about this interesting initiative from the blog Computer Vision Talks. The blogger (and augmented reality software developer) Eugene Khvedchenya has started a tutorial series on using OpenCV in the iOS world. This is really useful, since it can be problematic to make both worlds work together. Furthermore, CV and Image Processing people are usually not really aware of software design issues, and developing nice iOS demos of our cool algorithms can be a really painful process without this knowledge.

Reshaping a matrix with OpenCV

A short post about the method cv::Mat::reshape(int channels, int rows).

FREAK makes it into OpenCV trunk

Integrating our lab’s FREAK in your vision workflow is getting easier and easier!

Quickfix : compiler le svn d'OpenCV sur Mac

Si, comme moi, vous avez des difficultés à compiler OpenCV sur Mac depuis les versions post-2.4.0, voici un petit truc qui a marché pour moi.

OpenCV vs Matlab... encore !

Au cours du développement d’un nouvel algorithme d’amélioration d’images1, j’ai dû abandonner opencv et re-switcher sous matlab. En effet, j’avais abandonné matlab assez tôt dans ma thèse (je traitais des fichiers vidéos, et c’était clairement pas efficace, à la fois pour la rapidité des calculs et l’utilisation de la mémoire) pour employer opencv (en C puis en C++) à la place. Sauf que là, j’ai besoin d’une fonction qui n’existe pas dans opencv mais qui est dans matlab, et je n’ai pas de temps à consacrer à son implémentation (en gros, une méthode de calcul de SVD qui soit progressive et tourne sur des matrices ayant plus de 20 000 colonnes en temps raisonnable).

Mise à jour pour cv::Mat(cv::Rect()) avec OpenCV 2.4

Au détour d’une question sur StackOverflow, j’ai découvert qu’OpenCV 2.4 avait supprimé le mot-clé const de la fonction cv::Mat(cv::Rect()). On peut donc utiliser le résultat de cette fonction comme argument de la fonction copyTo(). La syntaxe suivante est désormais valide : cv::Mat bigMat(1024, 1024, CV_32FC1); cv::Mat someSmallData(256, 256, CV_32FC1); someSmallData.copyTo(bigMat(cv::Rect(xmin, ymin, xmin+256, ymin+256)); Avant, il aurait fallu d’abord créer un objet temporaire (en fait, juste un en-tête pour accéder au bon endroit de bigMat) pour obtenir une cv::Mat non constante, puis copier dans cette matrice temporaire.

OpenCV 2.4 arrive !

Nouveaux modules La librairie OpenCV passe officiellement en version 2.4.0. Au niveau des principales nouveautés, comme souligné précédemment, on voit apparaître un module nonfree pour les codes problématiques (SIFT1, SURF2) qui ne devraient pas être utilisés dans les applications commerciales (hors licences d’utilisation), un module videostab pour stabiliser les vidéos et un autre pour corriger le rolling shutter3, et les fonctions d’inpainting ont migré dans un module photo. Pour le module stitching, il me semble qu’il était déjà là avec la version 2.