Free as in freedom
This is an old C++, Qt & OpenCV prototype that scans a live webcam feed for vertices and export them to .xyz format (compatible with meshlab). It includes a few filters to better adapt the camera input to the edge detection algorithms like gamma and exposure, it also takes screenshots!
This program is no longer maintained and mostly used as documentation for both Qt and OpenCV back when they didn't have such outstanding literature.
The scanner was made to help a robot navigate a 3D environment from a webcam feed. A second program would read the scanners
coordinates and guide the machine accordingly. It was also used to take screenshots.
Because the synergy between Qt and OpenCV used to be terribly documented, I updated the code to Qt5 and OpenCV3. This is the last
EDIT [06/10/2021] UPDATED TO RUN ON QT 5.12 & OPENCV 4.5
Make sure to compile opencv from source with Qt support (disabled by default). The following cmake configure should work:
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D OPENCV_GENERATE_PKGCONFIG=ON -D WITH_TBB=ON -D WITH_V4L=ON -D WITH_QT=ON -D WITH_OPENGL=ON ..
The included .pro QtCreator file uses pkg-config to include the opencv headers and libraries, though not all of them are required. Manually including opencv and removing troublesome
modules should work. Then select a qt 5 version kit in when confifguring the project in QtCreator. Presently, Qt 6+ has issues compiling with the multimedia module, but any version 5 kit should work.
Make sure its not currently used by another process and that it is being correctly recognized.
Bus 001 Device 003: ID 046d:082d Logitech, Inc. HD Pro Webcam C920
■ Qt5+ // GUI and file managing
■ OpenCV // Webcam input feed and matrices
A big thank you to their respective authors.
The project is MIT licensed and free.