Difference between revisions of "Упражнение 11. Компютърно зрение"
From Ilianko
Line 59: | Line 59: | ||
<img src="test.jpg" /> | <img src="test.jpg" /> | ||
cvSaveImage("/var/www/test.jpg" ,img, 0); | cvSaveImage("/var/www/test.jpg" ,img, 0); | ||
+ | |||
+ | |||
+ | int main(int argc, char** argv) | ||
+ | { | ||
+ | CvCapture* c1 = cvCaptureFromCAM(0); | ||
+ | IplImage* img; | ||
+ | IplImage* img1; | ||
+ | IplImage* img2; | ||
+ | IplImage* img3; | ||
+ | |||
+ | cvGrabFrame( c1 ); | ||
+ | img=cvRetrieveFrame(c1,0); | ||
+ | img1=cvRetrieveFrame(c1,0); | ||
+ | img2=cvRetrieveFrame(c1,0); | ||
+ | img3=cvRetrieveFrame(c1,0); | ||
+ | |||
+ | /* get image properties */ | ||
+ | int width = img->width; | ||
+ | int height = img->height; | ||
+ | |||
+ | |||
+ | |||
+ | cvAdd(img, img ,img , NULL); | ||
+ | |||
+ | /* create new image for the grayscale version */ | ||
+ | IplImage* bw = cvCreateImage( cvSize( width, height ), IPL_DEPTH_8U, 1 ); | ||
+ | |||
+ | |||
+ | |||
+ | while(cvWaitKey(5) < 0) | ||
+ | { | ||
+ | |||
+ | |||
+ | img2 = img1; | ||
+ | img1 = img; | ||
+ | |||
+ | cvGrabFrame( c1 ); | ||
+ | img=cvRetrieveFrame(c1,0); | ||
+ | |||
+ | |||
+ | cvAddWeighted( img1, 0.33, img2, 0.33, 0, img3); | ||
+ | cvAddWeighted( img, 1, img, 0.33, 0, img3); | ||
+ | |||
+ | cvCvtColor( img3, bw, CV_RGB2GRAY ); | ||
+ | cvCanny( bw, bw, 50, 100, 3 ); | ||
+ | |||
+ | |||
+ | cvShowImage( "c1", bw); | ||
+ | } | ||
+ | |||
+ | //destroy the window | ||
+ | cvReleaseCapture(&c1); | ||
+ | return 0; | ||
+ | } | ||
+ | |||
[[Category:Компютърна периферия]] | [[Category:Компютърна периферия]] |
Revision as of 08:57, 19 May 2011
Инсталация openCV
1. Инсталирайте cmake
sudo apt-get install cmake
2. Инсталирайте библиотеката libgtk2.0-dev
sudo apt-get install libgtk2.0-dev
3. да се свали openCV 2.2 и разархивирайте в директория Downloads/OpenCV-2.2.0
4. Влезте в директорията
cd Downloads/OpenCV-2.2.0 cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ./ make make install
export LD_LIBRARY_PATH=/home/lab/Downloads/OpenCV-2.2.0/lib:$LD_LIBRARY_PATH sudo ldconfig
-lopencv_core -lopencv_imgproc -lopencv_calib3d -lopencv_video -lopencv_features2d -lopencv_ml -lopencv_highgui -lopencv_objdetect -lopencv_contrib -lopencv_legacy
#include <opencv/highgui.h> //OpenCV GUI functions ̄include <stdio.h>
#include <opencv/cv.h> //main OpenCV functions
int main(int argc, char** argv)
{
CvCapture* c1 = cvCaptureFromCAM(0);
IplImage* img = 0;
while(cvWaitKey(2) < 0)
{
cvGrabFrame( c1 );
img=cvRetrieveFrame(c1,0);
cvShowImage( "c1", img);
}
//destroy the window
cvReleaseCapture(&c1);
return 0;
}
sinaptic manager
apache2
http://localhost/
sudo chmod 777 /var/www/index.html sudo chmod 777 /var/www/
<img src="test.jpg" /> cvSaveImage("/var/www/test.jpg" ,img, 0);
int main(int argc, char** argv)
{
CvCapture* c1 = cvCaptureFromCAM(0); IplImage* img; IplImage* img1; IplImage* img2; IplImage* img3; cvGrabFrame( c1 ); img=cvRetrieveFrame(c1,0); img1=cvRetrieveFrame(c1,0); img2=cvRetrieveFrame(c1,0); img3=cvRetrieveFrame(c1,0);
/* get image properties */ int width = img->width; int height = img->height;
cvAdd(img, img ,img , NULL);
/* create new image for the grayscale version */ IplImage* bw = cvCreateImage( cvSize( width, height ), IPL_DEPTH_8U, 1 );
while(cvWaitKey(5) < 0) { img2 = img1; img1 = img; cvGrabFrame( c1 ); img=cvRetrieveFrame(c1,0); cvAddWeighted( img1, 0.33, img2, 0.33, 0, img3); cvAddWeighted( img, 1, img, 0.33, 0, img3);
cvCvtColor( img3, bw, CV_RGB2GRAY ); cvCanny( bw, bw, 50, 100, 3 );
cvShowImage( "c1", bw); } //destroy the window cvReleaseCapture(&c1); return 0;
}