De thi xu ly anh doc

68 1.3K 20
De thi xu ly anh doc

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Đề thi Xử Lý Ảnh GV: Trần Tiến Đức Đề thi Xử Lý Ảnh GV: Trần Tiến Đức MỤC LỤC ĐỀ THI VÀ ĐÁP ÁN MÔN XỬ LÝ ẢNH SỐ Chương 3 gồm 13 câu từ câu 1 đến câu 13 Câu 1. Xây dựng và cài đặt thuật toán làm âm ảnh. Đáp án:  !"#$% #$&'(%#$&') *')+,) /#$&')01(23&'(%#'4.35 678(869 Cod e: void Negatives(BYTE **f, BYTE **g) { int x, y; BYTE r,s; for (x=0; x<M; x++) for (y=0; y<N; y++) { r = f[x][y];  : ; <=%=>   Đề thi Xử Lý Ảnh GV: Trần Tiến Đức s = L-1-r; g[x][y] = s; } return; } Câu 2. Xây dựng và cài đặt thuật toán biến đổi logarit ảnh. Đáp án: ?35@3 <A>  • #$&'( • #$&') • "B • <A>C=9 *')+, C7D9 Hằng số c được nh như sau: E)   <A> ;F== E) &          )11log( 1 −+ − L L  G23 ! H 9IJ I Cod e: void Logarithm(BYTE **f, BYTE **g) { int x, y; double r,s; double c = (L- 1)/log(1.0*L); for (x=0; x<M; x++) for (y=0; y<N; y++) { r = f[x][y]; s = c*log(1+r); g[x][y] = (int)s; } return; }  K63.    <=%=> L6)M(6 Đề thi Xử Lý Ảnh GV: Trần Tiến Đức Câu 3. Xây dựng và cài đặt thuật toán biến đổi lũy thừa ảnh. Đáp án: N35@3O.P)  Q (23#$&'(%#$&')% %Q"B9 • QR • QS"39 c: được nh như sau: E) D+, • == •   <> Q   γ )1( 1 − − L L Cod e: void Power(BYTE **f, BYTE **g) { int x, y; double r,s; double gamma = 5.0; double c = (L-1)/pow(1.0*(L-1),gamma); for (x=0; x<M; x++) for (y=0; y<N; y++) { r = f[x][y]; s = c*pow(1.0*r,gamma);; g[x][y] = (int)s; } return; } T  γ=0,4 γ=1 γ=1,5 S R Đề thi Xử Lý Ảnh GV: Trần Tiến Đức Câu 4. Xây dựng và cài đặt thuật toán biến đổi tuyến tính từng phần. Đáp án: Quan sát trên đồ thị ta thấy: N35@36U63V'%8U783V'9E# WXY)<Z[3\X>9 Ta có: ?C]3^')3_<$%.>(<$%.> 12 1 yy yy − −  12 1 xx xx − − ` 12 12 xx yy − − <$$>A. • abK3_<=%=>(<%> : 1 1 r s  • abKK3_<%>(<%> H   L-1 L-1 r <%> <%> Đề thi Xử Lý Ảnh GV: Trần Tiến Đức : 12 12 rr ss − − <>A • abKKK3_<%>(<%> : 2)1( 2)1( rL sL −− −− <>A <%>(<%>29 Cod e: void PiecewiseLinear(BYTE **f, BYTE **g) { double r1,s1,r2,s2,rmin,rmax,s,r,m,sum; int x, y; rmin = f[0][0]; rmax = f[0][0]; for (x=0; x<M; x++) for (y=0; y<N; y++) { r = f[x][y]; if (r<rmin) rmin = r; if (r>rmax) rmax = r; } r1 = rmin; s1 = 0; r2 = rmax; s2 = L-1; for (x=0; x<M; x++) for (y=0; y<N; y++) { r = f[x][y]; if (r<r1) s = s1/r1*r; else if (r<r2) s = (s2-s1)/(r2-r1)*(r-r1)+s1; else s = (L-1-s2)/(L-1-r2)*(r-r2)+s2; g[x][y] = (int)s; } return; } Câu 5. Xây dựng và cài đặt thuật toán cân bằng histogram. Đáp án: /cUY)3)3)+V'9d3)WX Y)9 Đề thi Xử Lý Ảnh GV: Trần Tiến Đức 3) E<><> ∫ r r dwwp 0 )( (23 r <e>f'-$.)#$w E$'-%gY)4X"39h#Dw353D c%)Zh_49E)3Bih#C3b  Z E< Z ><> ∑ = k j jr rp 0 )( (23Z=%%%j% Cod e: void HistogramEqualization(BYTE **f, BYTE **g) { double T[L]; int k, j, x, y; BYTE r; double s; double p[L]; Histogram(f,p); for (k=0; k<L; k++) { T[k] = 0; for (j=0; j<=k; j++) T[k] = T[k] + p[j]; } for (x=0; x<M; x++) for (y=0; y<N; y++) { r = f[x][y]; s = T[r]; g[x][y] = (int)(s*(L-1)); } return; } Câu 6. Xây dựng và cài đặt thuật toán đặc tả histogram. Đáp án: dh33)kO"%Dh3Z3)3)(V3) )'"9 ! Đề thi Xử Lý Ảnh GV: Trần Tiến Đức EU3)Y)+3'.)35@33)lX   <r m > MN n j  Z E< Z > ∑ = k j jr rp 0 )( 3)'" n <z i > N35@33)'"9 ( Z o<n Z > k k j jz szp = ∑ =0 )(  Z %)'.)n Z )' n Z o  <E< Z >> Mục êu:#$&'( Z %)'.)#$&')n Z 9 GUBc3)'"(p)' q Đề thi Xử Lý Ảnh GV: Trần Tiến Đức a_h3)'"(p%)BiC]3^'))3 3_<$  %.  >(<$  %.  > 12 1 yy yy − −  12 1 xx xx − − S. 12 12 xx yy − − <$$>A. Cod e: void HistogramSpecification(BYTE **f, BYTE **g) { double pz1,pz2,pz3,pz4,pz5,pz6; int z1,z2,z3,z4,z5,z6; double pz[L]; double G[L]; double pr[L]; double T[L]; double sum; int z, k, i, j, x, y; // Histogram dac ta z1 = 0; pz1 = 0.75; z2 = 10; pz2 = 7; z3 = 20; pz3 = 0.75; z4 = 180; pz4 = 0; z5 = 200; pz5 = 0.7; z6 = 255; pz6 = 0; for (z=0; z<L; z++) if (z<z2) pz[z] = (pz2-pz1)/(z2-z1)*(z-z1) + pz1; else if (z<z3) pz[z] = (pz3-pz2)/(z3-z2)*(z-z2) + pz2; else if (z<z4) J Đề thi Xử Lý Ảnh GV: Trần Tiến Đức pz[z] = (pz4-pz3)/(z4-z3)*(z-z3) + pz3; else if (z<z5) pz[z] = (pz5-pz4)/(z5-z4)*(z-z4) + pz4; else pz[z] = (pz6-pz5)/(z6-z5)*(z-z5) + pz5; // Chuan hoa pz sao cho tong xac suat bang 1 sum = 0; for (z=0; z<L; z++) sum += pz[z]; for (z=0; z<L; z++) pz[z] = pz[z]/sum; for (k=0; k<L; k++) { G[k] = 0; for (i=0; i<=k; i++) G[k] = G[k] + pz[i]; } // Histogram cua anh Histogram(f,pr); for (k=0; k<L; k++) { T[k] = 0; for (j=0; j<=k; j++) T[k] = T[k] + pr[j]; } // Matching 2 histogram BYTE r; double s; for (x=0; x<M; x++) for (y=0; y<N; y++) { r = f[x][y]; s = T[r]; for (k=0; k<L; k++) if (G[k]>=s) break; g[x][y] = k; } return; } Câu 7. Xây dựng và cài đặt thuật toán cân bằng histogram cục bộ. Đáp án: EC#$ZV)'Dr^'s%5')3)lX pZhZ5^'9EC)3Bi3)cX9 tu)@ZU2v_&u'%(UBcT%3)Y)Bw 3r' Pu)@().&u'&u239 I Đề thi Xử Lý Ảnh GV: Trần Tiến Đức Cod e: void LocalHistogram(BYTE **w, int m, int n, double *p) { int x, y, k; BYTE r; for (k=0; k<L; k++) p[k] = 0; for (x=0; x<m; x++) for (y=0; y<n; y++) { r = w[x][y]; p[r]++; } for (k=0; k<L; k++) p[k] = p[k]/(m*n); return; } void LocalHistogramEqualization(double *p, double *T) { int j, k; for (k=0; k<L; k++) { T[k] = 0; for (j=0; j<=k; j++) T[k] = T[k] + p[j]; } return; } void LocalEnhancement(BYTE **f, BYTE **g) { int m, n; m = 3; n = 3; BYTE **w; int x, y, s, t, a, b; a = m/2; b = n/2; double p[L]; double T[L]; BYTE r; w = (BYTE **)Alloc2D(m,n,sizeof(BYTE)); for (x=a; x<M-a; x++) for (y=b; y<N-b; y++) { for (s=-a; s<=a; s++) for (t=-b; t<=b; t++) w[s+a][t+b] = f[x+s][y+t]; LocalHistogram(w,m,n,p); LocalHistogramEqualization(p,T); r = f[x][y]; g[x][y] = (int)((L-1)*T[r]); } = [...]... **Sobely; Sobelx = (double **)Alloc2D(m,n,sizeof(double)); Sobely = (double **)Alloc2D(m,n,sizeof(double)); Sobelx[0][0] = -1; Sobelx[0][1] = -2; Sobelx[0][2] = -1; Sobelx[1][0] = 0; Sobelx[1][1] = 0; Sobelx[1][2] = 0; Sobelx[2][0] = 1; Sobelx[2][1] = 2; Sobelx[2][2] = 1; Sobely[0][0] = -1; Sobely[0][1] = Sobely[1][0] = -2; Sobely[1][1] = Sobely[2][0] = -1; Sobely[2][1] = 0; Sobely[0][2] = 0; Sobely[1][2]... Viết dưới dạng mặt nạ như sau : Code: void ConvolutionInt(BYTE **f, int M, int N, int **g, double **w, int m, int n, BOOL border) { int bx, by, a, b, x, y, s, t, p, q; double r; a = m/2; b = n/2; if (border) { bx = 0; by = 0; } else { bx = a; by = b; } for (x=bx; x . Sobelx[2][2] = 1; Sobely[0][0] = -1; Sobely[0][1] = 0; Sobely[0][2] = 1; Sobely[1][0] = -2; Sobely[1][1] = 0; Sobely[1][2] = 2; Sobely[2][0] = -1; Sobely[2][1] = 0; Sobely[2][2] = 1; ConvolutionInt(f,M,N,gx,Sobelx,m,n,TRUE); ConvolutionInt(f,M,N,gy,Sobely,m,n,TRUE); for. ),(),( E $ZU2Y)Xt%(C"v_Xt&u'9 )|(|ZU2w)Xt9 ?[tZh3)t3@4<('M>9 a"3(23t'.5g%‚btCXt'9 GUBc‚bt'(‚bo)' Co de : void Convolution(BYTE **f, int M, int N, BYTE **g, double **w, int m, int n, BOOL border) { int bx, by, a, b, x, y, s, t, p, q; double r; a = m/2; b = n/2; if (border) { bx =. Đề thi Xử Lý Ảnh GV: Trần Tiến Đức Đề thi Xử Lý Ảnh GV: Trần Tiến Đức MỤC LỤC ĐỀ THI VÀ ĐÁP ÁN MÔN XỬ LÝ ẢNH SỐ Chương 3 gồm 13 câu từ câu

Ngày đăng: 08/08/2014, 18:22

Từ khóa liên quan

Mục lục

  • ĐỀ THI VÀ ĐÁP ÁN MÔN XỬ LÝ ẢNH SỐ

  • Chương 3 gồm 13 câu từ câu 1 đến câu 13

  • Câu 1. Xây dựng và cài đặt thuật toán làm âm ảnh.

  • Đáp án:

  • Câu 2. Xây dựng và cài đặt thuật toán biến đổi logarit ảnh.

  • Đáp án:

  • Câu 3. Xây dựng và cài đặt thuật toán biến đổi lũy thừa ảnh.

  • Đáp án:

  • Câu 4. Xây dựng và cài đặt thuật toán biến đổi tuyến tính từng phần.

  • Đáp án:

  • Câu 5. Xây dựng và cài đặt thuật toán cân bằng histogram.

  • Đáp án:

  • Câu 6. Xây dựng và cài đặt thuật toán đặc tả histogram.

  • Đáp án:

  • Câu 7. Xây dựng và cài đặt thuật toán cân bằng histogram cục bộ.

  • Đáp án:

  • Câu 8. Xây dựng và cài đặt thuật toán nâng cao chất lượng ảnh bằng thống kê histogram.

  • Đáp án:

  • Câu 9. Xây dựng và cài đặt thuật toán lọc tuyến tính làm trơn.

  • Đáp án:

Tài liệu cùng người dùng

Tài liệu liên quan