PDA

View Full Version : پروژه پردازش تصویر open cv (دریافت تصویر- بدست آوردن مقدار پیکسل - چرخش تصویر و..)



pnet
جمعه 22 دی 1391, 11:04 صبح
پروژه پردازش تصویر open cv که می تواند کار های زیر را انجام بده با visual studio 2010 ++c نوشته شده است . البته جلوی هر کد توضیحات آن رو گذاشتم ولی بدلیل حجم بالای فایل exe و dll حدود 200 مگابایت نتوانستم سورس در سایت قرار بدهم

با قابلیت دریافت تصویر- بدست آوردن مقدار پیکسل - چرخش تصویر و کپی با فرمت bmp

در صورت بهم ریختگی کد ها می توانید کد های را از سایت من http://parvizsaiyadi.com/?p=924 دریافت کنید

1 :
3 : #include<opencv/cvaux.h>
4 : #include<opencv/highgui.h>
5 : #include<opencv/cxcore.h>
6 : #include<stdio.h>
7 : #include<stdlib.h>
8 : #include "stdafx.h"
9 : #include <windows.h>
10 :
11 : using namespace cv;
12 : using namespace std;
13 :
14 :
15 : int main( int argc, char** argv )
16 : {
17 : loop:
18 : int chose = 0 ;
19 : cout <<endl ;
20 :
21 : cout <<"choose item for image processing ? "<<endl
22 : << endl
23 : << endl <<"1- Open Image :"
24 : << endl <<"2- Get Image Size :"
25 : << endl <<"3- Flip Image :"
26 : << endl <<"4- Create bmp Imgae :"
27 : << endl <<"5- Create Imgae :"
28 : << endl <<"6- Exit "<<endl;
29 : cout << endl ;
30 :
31 :
32 : cin >> chose ;
33 :
34 : switch (chose)
35 : {
36 :
37 : case 1 : cout << "Open Image :" <<endl ;
38 : {
39 : // باز کردن تصویر
40 : Mat image= imread("boldt.jpg");
41 : // call function to add noise
42 :
43 :
44 : // salt(image,3000);
45 : // نمایش تصویر
46 : namedWindow("OpenImage");
47 : // نمایش تصویر
48 : imshow("OpenImage",image);
49 : waitKey(4000) ;
50 : //
51 : // نابود کردن تمام پنجره ها
52 : // cvDestroyAllWindows();
53 : cvDestroyWindow("OpenImage");
54 : // پاک کردن صفحه
55 : system("CLS") ;
56 : //رفتن به
57 : goto loop;
58 :
59 : break ;
60 : }
61 : case 2 : cout << "2- Get Image Size :" <<endl ;
62 : {
63 : cout << endl ;
64 : // باز کردن تصویر
65 : Mat image1= imread("boldt.jpg");
66 : // call function to add noise
67 :
68 :
69 : // salt(image,3000);
70 : // نمایش تصویر
71 : namedWindow("OpenImage");
72 : // نمایش تصویر
73 : imshow("OpenImage",image1);
74 :
75 :
76 : // بدست آرودن طول و عرض تصویر
77 : cout << "size :" <<" height: "<< image1.size().height << " "<<"width: " << image1.size().width << '\n' ;
78 : cout<< '\n' ;
79 : waitKey(4000) ;
80 : // از بین بردن پنجره
81 : cvDestroyAllWindows();
82 : //cvDestroyWindow("OpenImage");
83 :
84 : // پاک کردن صفحه
85 : system("CLS") ;
86 :
87 : //رفتن به
88 : goto loop;
89 :
90 :
91 : break ;
92 : }
93 :
94 : case 3 : cout <<"3- Flip Image :" <<endl;
95 : {
96 : // باز کردن تصویر
97 : Mat image3= imread("boldt.jpg");
98 : // call function to add noise
99 :
100 :
101 : // salt(image,3000);
102 : // نمایش تصویر
103 : namedWindow("OpenImage");
104 : // نمایش تصویر
105 : imshow("OpenImage",image3);
106 : Mat result ;
107 : flip(image3 ,result ,0 ) ;
108 :
109 : imshow("flip" , result ) ;
110 : cout << " flip size :" <<" height: "<< result.size().height << " "<<"width: " << result.size().width ;
111 : waitKey(4000) ;
112 : //
113 : // نابود کردن تمام پنجره ها
114 : // cvDestroyAllWindows();
115 : cvDestroyAllWindows();
116 : // پاک کردن صفحه
117 : system("CLS") ;
118 : //رفتن به
119 : goto loop;
120 :
121 : break ;
122 : }
123 :
124 : case 4 : cout <<"4- Create bmp Imgae :" <<endl;
125 : {
126 : // باز کردن تصویر
127 : Mat image3= imread("boldt.jpg");
128 : // call function to add noise
129 :
130 :
131 : // salt(image,3000);
132 : // نمایش تصویر
133 : namedWindow("OpenImage");
134 : // نمایش تصویر
135 : imshow("OpenImage",image3);
136 : namedWindow("Output Image");
137 : // ایجاد تصویر جدید
138 : imshow("Output Image", image3);
139 : imwrite("output.bmp", image3);
140 : waitKey(4000) ;
141 : //
142 : // نابود کردن تمام پنجره ها
143 : // cvDestroyAllWindows();
144 : cvDestroyAllWindows();
145 : // پاک کردن صفحه
146 : system("CLS") ;
147 : //رفتن به
148 : goto loop;
149 :
150 : break ;
151 : }
152 :
153 : case 5 : cout <<"5- Create Imgae :" <<endl;
154 : {
155 :
156 : // ایجاد تصویر جدید
157 : cv::Mat ima(600,800,CV_8U,cv::Scalar(100));
158 : imshow("Output Image", ima);
159 : imwrite("new.png", ima);
160 : waitKey(4000) ;
161 : //
162 : // نابود کردن تمام پنجره ها
163 : // cvDestroyAllWindows();
164 : cvDestroyAllWindows();
165 : // پاک کردن صفحه
166 : system("CLS") ;
167 : //رفتن به
168 : goto loop;
169 :
170 : break ;
171 : }
172 :
173 : case 6:
174 : {
175 : cout << "Are You Want To Exit Program ?"<<"Y / N "<<endl;
176 : char answer;
177 : cin >> answer;
178 : if (answer == 'y' || answer == 'Y')// If not continue, exit
179 : {
180 : break ;
181 : system("exit");
182 : }
183 : if (answer == 'n' || answer == 'N')
184 : {
185 : // پاک کردن صفحه
186 : system("CLS") ;
187 : goto loop ;
188 : }
189 : }
190 :
191 : default: cout <<"Please select valid nubmer to run project ." <<endl;
192 : goto loop ;
193 : }
194 : return 0 ;
195 :
196 :
197 : }