MouseTrap Dev Help

(Difference between revisions)
Jump to: navigation, search
(Modules Available)
(Modules Available)
Line 69: Line 69:
 
  *'''highgui:''' an easy-to-use interface to video capturing, image and video codecs, as well as simple UI capabilities
 
  *'''highgui:''' an easy-to-use interface to video capturing, image and video codecs, as well as simple UI capabilities
 
  *'''gpu:''' GPU-accelerated algorithms from different OpenCV modules
 
  *'''gpu:''' GPU-accelerated algorithms from different OpenCV modules
  * some other helper modules, such as FLANN and Google test wrappers, Python bindings, and others
+
  *some other helper modules, such as FLANN and Google test wrappers, Python bindings, and others
  
  
  
 
[[Category:Gnome_MouseTrap]]
 
[[Category:Gnome_MouseTrap]]

Revision as of 14:50, 12 February 2013

Contents

Opencv

Great Resources

cv 2.4.3

A cv2 example

Here is a little program that will capture video from the webcam and display it (you might have to CTRL+C)

"""
This module is used for testing the opencv2 capabilities
"""
import cv2
#get webcam feed
capture = cv2.VideoCapture(0)
while True:
    #combines VideoCapture.grab() and VideoCapture.retrieve()
    retrieval_value, image = capture.read()
    #shows captured image in a window
    cv2.imshow("webcam", image)
    #will stop capture with capatible webcam
    if cv2.waitKey(10) == 27:
        break

cv 2.1

Concerns

Here we place all of the concerns when migrating to a newer version of opencv or the repercussions of not upgrading.

Migration to Python 3

  • Opencv 2.4.3 does not support Python 3

Camera drivers

  • Currently, only some camera drivers are supported with the new version of opencv, leading to problems regarding capture. One issue is the inability to cancel the program webcam capture.

Yum repo

  • Right now, only the 2.3.1 version of opencv is available in the yum repository

OpenCV Info (WIP)

Basics and Source Code

OpenCV (Open Source Computer Vision) is a library of programming functions for the realtime computer vision. OpenCV is released under the liberal BSD license and hence it's free for both academic and commercial use. It has C++, C, Python and Java (Android) interfaces and supports Windows, Linux, Android and Mac OS. The library has more than 2500 optimized algorithms. Adopted all around the world, OpenCV has more than 47 thousand people of user community and estimated number of downloads exceeding 5 million. Usage ranges from interactive art, to mines inspection, stitching maps on the web or through advanced robotics.

To access the OpenCV repository directly: git clone git://github.com/itseez/opencv.git

History

"OpenCV was started at Intel in 1999 by Gary Bradski for the purposes of accelerating research in and commercial applications of computer vision in the world and, for Intel, creating a demand for ever more powerful computers by such applications. Vadim Pisarevsky joined Gary to manage Intel's Russian software OpenCV team. Over time the OpenCV team moved on to other companies and other Research. Several of the original team eventually ended up working in robotics and found their way to Willow Garage. In 2008, Willow Garage saw the need to rapidly advance robotic perception capabilities in an open way that leverages the entire research and commercial community and began actively supporting OpenCV, with Gary and Vadim once again leading the effort."

Definitions

Modules Available

*core: a compact module defining basic data structures, including the dense multi-dimensional array Mat and basic functions used by all other modules
*imgproc: an image processing module that includes linear and non-linear image filtering, geometrical image transformations    (resize, affine and perspective warping, generic table-based remapping), color space conversion, histograms, and so on
*video: a video analysis module that includes motion estimation, background subtraction, and object tracking algorithms
*calib3d: basic multiple-view geometry algorithms, single and stereo camera calibration, object pose estimation, stereo correspondence algorithms, and elements of 3D reconstruction
*features2d: salient feature detectors, descriptors, and descriptor matchers
*objdetect: detection of objects and instances of the predefined classes (for example, faces, eyes, mugs, people, cars, and so on)
*highgui: an easy-to-use interface to video capturing, image and video codecs, as well as simple UI capabilities
*gpu: GPU-accelerated algorithms from different OpenCV modules
*some other helper modules, such as FLANN and Google test wrappers, Python bindings, and others
Personal tools
Namespaces
Variants
Actions
Events
Learning Resources
HFOSS Projects
Evaluation
Navigation
Toolbox