Đề cương xử lý ảnh
Số trang: 9
Loại file: doc
Dung lượng: 80.50 KB
Lượt xem: 19
Lượt tải: 0
Xem trước 2 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Xử lý ảnh là một trong những mảng quan trọng nhất trong kỹ thuật thị giác máy tính, là tiền đề cho nhiều nghiên cứu thuộc lĩnh vực này. Hai nhiệm vụ cơ bản của quá trình xử lý ảnh là nâng cao chất lượng thông tin hình ảnh và xử lý số liệu cung cấp cho các quá trình khác trong đó có việc ứng dụng thị giác vào điều khiển.
Nội dung trích xuất từ tài liệu:
Đề cương xử lý ảnh ♥♥♥ Leâ Nhung _ 48 Toaùn Tin ♥♥♥ ĐỀ CƯƠNG ÔN TẬP : XỬ LÝ ẢNH Serialize: ar.Read(&bfHeader,sizeof(bfHeader)); if (bfHeader.bfType !=('M'SetPixel(n,pDoc->biHeader.biHeight-m, RGB(R,G,B)); } Lấy âm bản: Hiện his C.....Doc* pDoc = GetDocument(); C.............Doc* pDoc = GetDocument(); int m,n; int L=256; int M=pDoc->biHeader.biHeight; int M=pDoc->biHeader.biHeight; int N=pDoc->biHeader.biWidth; int N=pDoc->biHeader.biWidth; int m,n,u; for(m=0;mquay dọc: quay ngang C.........Doc* pDoc = GetDocument(); C.........Doc* pDoc = GetDocument(); int M=pDoc->biHeader.biHeight; int M=pDoc->biHeader.biHeight; int N=pDoc->biHeader.biWidth; int N=pDoc->biHeader.biWidth; int m,n; int m,n; BYTE X[1000][1000]; BYTE X[1000][1000]; for(m=0;mbiHeader.biWidth; int m,n,tg; int m,n,tg; BYTE X[1000][1000]; BYTE X[1000][1000]; for(m=0;mbiHeader.biHeight=pDoc- >biHeader.biWidth; >biHeader.biWidth; pDoc->biHeader.biWidth=tg; pDoc->biHeader.biWidth=tg; Invalidate(); Invalidate(); quay 180 độ: C...............Doc* pDoc = GetDocument(); int M=pDoc->biHeader.biHeight; int N=pDoc->biHeader.biWidth; int m,n; BYTE X[1000][1000]; for(m=0;mC...........Doc* pDoc = GetDocument(); int M=pDoc->biHeader.biHeight; int N=pDoc->biHeader.biWidth; int m,n; //chen them hang moi for(m=M-1;m>=0;m--) for(n=0;nData[2*m][n]=pDoc->Data[m][n]; pDoc->Data[2*m+1][n]=pDoc->Data[m][n]; } //chen them cot for(n=N-1;n>=0;n--) for(m=0;mData[m][2*n]=pDoc->Data[m][n]; pDoc->Data[m][2*n+1]=pDoc->Data[m][n]; } pDoc->biHeader.biHeight*=2; pDoc->biHeader.biWidth*=2; Invalidate() Khuếch đại ảnh bằng phương pháp nội suy: C..........Doc* pDoc = GetDocument(); int M=pDoc->biHeader.biHeight; int N=pDoc->biHeader.biWidth; int m,n; //Chen theo hang for (m=M-1;m>=0;m--) for (n=0;nData[2*m][n]=pDoc->Data[m][n]; if (m==M-1) pDoc->Data[2*m+1][n]=pDoc->Data[m][n]/2; else pDoc->Data[2*m+1][n]=(pDoc->Data[m][n]+pDoc->Data[m+1][n])/2; } //chen theo cot for (n=N-1;n>=0;n--) for (m=0;mData[m][2*n]=pDoc->Data[m][n]; if (n==N-1) pDoc->Data[m][2*n+1]=pDoc->Data[m][n]/2; pDoc->Data[m][2*n+1]=(pDoc->Data[m][n]+pDoc->Data[m][n+1])/2; } pDoc->biHeader.biHeight*=2; pDoc->biHeader.biWidth*=2; Invalidate(); Loc trung bình 3 C..........Doc* pDoc = GetDocument(); int M=pDoc->biHeader.biHeight; int N=pDoc->biHeader.biWidth; BYTE X[1000][1000]; int m,n,k,l,lc=1; int tong; BYTE H[3][3]={{1,1,1},{1,1,1},{1,1,1}}; for(m=0;mfor(m=lc;m int M=pDoc->biHeader.biHeight; int N=pDoc->biHeader.biWidth; int m,n,u; float LUT[256]; int a=80,Va=120,b=255,Vb=255; int L=255; for(u=0;ubiHeader.biHeight; int N=pDoc->biHeader.biWidth; int t1=80,t2=160; int tong1=0,tong2=0,tong3=0; 6 int m,n,n1=0,n2=0,n3=0; for(m=0;mData[m][n]Data[m][n]; n2++; } else { tong3+=pDoc->Data[m][n]; n3++; } for(m=0;mData[m][n]Data[m][n]=tong2/n2; else pDoc->Data[m][n]=tong3/n3; Invalidate(); TOÁN TỬ GRADIENT C.............Doc* pDoc = GetDocument(); int i,j,k,l; int M=pDoc->biHeader.biHeight; int N=pDoc->biHeader.biWidth; int lc=1,K=3,d=100; int L=255; BYTE dt[1000][1000]; int hm[3][3]={{1,1,1},{0,0,0},{-1,-1,-1}}; int hn[3][3]={{1,0,-1},{1,0,-1},{1,0,-1}}; // xet cac diem phia ngoai for(i=0;i=d) dt[i][j]=L; else dt[i][j]=0; // tinh lai cac diem phia trong for(i=lc;ifor(i=0;ibiHeader.biHeight; int N=pDoc->biHeader.biWidth; int h0[3][3]={{1,0,-1},{1,0,-1},{1,0,-1}}; int h1[3][3]={{0,-1,-1},{1,0,-1},{1,1,0}}; int h2[3][3]={{-1,-1,-1},{0,0,0},{1,1,1}}; int h3[3][3]={{-1,-1,0},{-1,0,1},{0,1,1}}; int h4[3][3]={{-1,0,1},{-1,0,1},{-1,0,1}}; int h5[3][3]={{0,1,1},{-1,0,1},{-1,-1,0}}; int h6[3][3]={{1,1,1},{0,0,0},{-1,-1,-1}}; int h7[3][3]={{1,1,0},{1,0,-1},{0,-1,-1}}; int x[8],max,d=80; // tim diem co gia tri cao nhat int lc=1; int K=3; // tao ban sao gt for (i=0;iData[i][j]=255; else pDoc->Data[i][j]=0; //tinh lai cac diem phia trong for(i=lc;ielse pDoc->Data[i][j]=0; } Invalidate(); TOÁN TỬ LAPLACE C....Doc* pDoc = GetDocument(); int n,m,k,l; int M=pDoc->biHeader.biHeight; int N=pDoc->biHeader.biWidth; int H[3][3]={{-1,2,-1},{2,-4,2},{-1,2,-1}}; BYTE X[1000][1000]; for(m=0;m
Nội dung trích xuất từ tài liệu:
Đề cương xử lý ảnh ♥♥♥ Leâ Nhung _ 48 Toaùn Tin ♥♥♥ ĐỀ CƯƠNG ÔN TẬP : XỬ LÝ ẢNH Serialize: ar.Read(&bfHeader,sizeof(bfHeader)); if (bfHeader.bfType !=('M'SetPixel(n,pDoc->biHeader.biHeight-m, RGB(R,G,B)); } Lấy âm bản: Hiện his C.....Doc* pDoc = GetDocument(); C.............Doc* pDoc = GetDocument(); int m,n; int L=256; int M=pDoc->biHeader.biHeight; int M=pDoc->biHeader.biHeight; int N=pDoc->biHeader.biWidth; int N=pDoc->biHeader.biWidth; int m,n,u; for(m=0;mquay dọc: quay ngang C.........Doc* pDoc = GetDocument(); C.........Doc* pDoc = GetDocument(); int M=pDoc->biHeader.biHeight; int M=pDoc->biHeader.biHeight; int N=pDoc->biHeader.biWidth; int N=pDoc->biHeader.biWidth; int m,n; int m,n; BYTE X[1000][1000]; BYTE X[1000][1000]; for(m=0;mbiHeader.biWidth; int m,n,tg; int m,n,tg; BYTE X[1000][1000]; BYTE X[1000][1000]; for(m=0;mbiHeader.biHeight=pDoc- >biHeader.biWidth; >biHeader.biWidth; pDoc->biHeader.biWidth=tg; pDoc->biHeader.biWidth=tg; Invalidate(); Invalidate(); quay 180 độ: C...............Doc* pDoc = GetDocument(); int M=pDoc->biHeader.biHeight; int N=pDoc->biHeader.biWidth; int m,n; BYTE X[1000][1000]; for(m=0;mC...........Doc* pDoc = GetDocument(); int M=pDoc->biHeader.biHeight; int N=pDoc->biHeader.biWidth; int m,n; //chen them hang moi for(m=M-1;m>=0;m--) for(n=0;nData[2*m][n]=pDoc->Data[m][n]; pDoc->Data[2*m+1][n]=pDoc->Data[m][n]; } //chen them cot for(n=N-1;n>=0;n--) for(m=0;mData[m][2*n]=pDoc->Data[m][n]; pDoc->Data[m][2*n+1]=pDoc->Data[m][n]; } pDoc->biHeader.biHeight*=2; pDoc->biHeader.biWidth*=2; Invalidate() Khuếch đại ảnh bằng phương pháp nội suy: C..........Doc* pDoc = GetDocument(); int M=pDoc->biHeader.biHeight; int N=pDoc->biHeader.biWidth; int m,n; //Chen theo hang for (m=M-1;m>=0;m--) for (n=0;nData[2*m][n]=pDoc->Data[m][n]; if (m==M-1) pDoc->Data[2*m+1][n]=pDoc->Data[m][n]/2; else pDoc->Data[2*m+1][n]=(pDoc->Data[m][n]+pDoc->Data[m+1][n])/2; } //chen theo cot for (n=N-1;n>=0;n--) for (m=0;mData[m][2*n]=pDoc->Data[m][n]; if (n==N-1) pDoc->Data[m][2*n+1]=pDoc->Data[m][n]/2; pDoc->Data[m][2*n+1]=(pDoc->Data[m][n]+pDoc->Data[m][n+1])/2; } pDoc->biHeader.biHeight*=2; pDoc->biHeader.biWidth*=2; Invalidate(); Loc trung bình 3 C..........Doc* pDoc = GetDocument(); int M=pDoc->biHeader.biHeight; int N=pDoc->biHeader.biWidth; BYTE X[1000][1000]; int m,n,k,l,lc=1; int tong; BYTE H[3][3]={{1,1,1},{1,1,1},{1,1,1}}; for(m=0;mfor(m=lc;m int M=pDoc->biHeader.biHeight; int N=pDoc->biHeader.biWidth; int m,n,u; float LUT[256]; int a=80,Va=120,b=255,Vb=255; int L=255; for(u=0;ubiHeader.biHeight; int N=pDoc->biHeader.biWidth; int t1=80,t2=160; int tong1=0,tong2=0,tong3=0; 6 int m,n,n1=0,n2=0,n3=0; for(m=0;mData[m][n]Data[m][n]; n2++; } else { tong3+=pDoc->Data[m][n]; n3++; } for(m=0;mData[m][n]Data[m][n]=tong2/n2; else pDoc->Data[m][n]=tong3/n3; Invalidate(); TOÁN TỬ GRADIENT C.............Doc* pDoc = GetDocument(); int i,j,k,l; int M=pDoc->biHeader.biHeight; int N=pDoc->biHeader.biWidth; int lc=1,K=3,d=100; int L=255; BYTE dt[1000][1000]; int hm[3][3]={{1,1,1},{0,0,0},{-1,-1,-1}}; int hn[3][3]={{1,0,-1},{1,0,-1},{1,0,-1}}; // xet cac diem phia ngoai for(i=0;i=d) dt[i][j]=L; else dt[i][j]=0; // tinh lai cac diem phia trong for(i=lc;ifor(i=0;ibiHeader.biHeight; int N=pDoc->biHeader.biWidth; int h0[3][3]={{1,0,-1},{1,0,-1},{1,0,-1}}; int h1[3][3]={{0,-1,-1},{1,0,-1},{1,1,0}}; int h2[3][3]={{-1,-1,-1},{0,0,0},{1,1,1}}; int h3[3][3]={{-1,-1,0},{-1,0,1},{0,1,1}}; int h4[3][3]={{-1,0,1},{-1,0,1},{-1,0,1}}; int h5[3][3]={{0,1,1},{-1,0,1},{-1,-1,0}}; int h6[3][3]={{1,1,1},{0,0,0},{-1,-1,-1}}; int h7[3][3]={{1,1,0},{1,0,-1},{0,-1,-1}}; int x[8],max,d=80; // tim diem co gia tri cao nhat int lc=1; int K=3; // tao ban sao gt for (i=0;iData[i][j]=255; else pDoc->Data[i][j]=0; //tinh lai cac diem phia trong for(i=lc;ielse pDoc->Data[i][j]=0; } Invalidate(); TOÁN TỬ LAPLACE C....Doc* pDoc = GetDocument(); int n,m,k,l; int M=pDoc->biHeader.biHeight; int N=pDoc->biHeader.biWidth; int H[3][3]={{-1,2,-1},{2,-4,2},{-1,2,-1}}; BYTE X[1000][1000]; for(m=0;m
Tìm kiếm theo từ khóa liên quan:
xử lý ảnh tài liệu xử lý ảnh đề cương xử lý ảnh giáo trình xử lý ảnh phương pháp xử lý ảnhGợi ý tài liệu liên quan:
-
Phương pháp truyền dữ liệu giữa hai điện thoại thông minh qua môi trường ánh sáng nhìn thấy
6 trang 310 0 0 -
Đồ án: Kỹ thuật xử lý ảnh sử dụng biến đổi Wavelet
41 trang 214 0 0 -
Xây dựng công cụ nhận dạng khuôn mặt theo thời gian thực hiện trên nền hệ điều hành mã nguồn mỡ
7 trang 206 0 0 -
Đồ án tốt nghiệp: Ứng dụng xử lý ảnh trong hệ thống phân loại sản phẩm
123 trang 197 0 0 -
Đề cương chi tiết môn học Kỹ thuật đồ họa và xử lý ảnh
5 trang 172 1 0 -
Đồ án tốt nghiệp: Ứng dụng camera 3D trong việc phân loại sản phẩm theo hình dạng và kích thước
83 trang 110 0 0 -
578 trang 101 0 0
-
Giáo trình Nhận dạng và xử lý ảnh: Phần 2
137 trang 92 0 0 -
Phương pháp Xử lý ảnh bằng kỹ thuật số: Phần 1
92 trang 90 0 0 -
65 trang 85 3 0