Mô tả:
ĐẠI HỌC ĐÀ NẴNG - ĐẠI HỌC BÁCH KHOA
KHOA: CÔNG NGHỆ THÔNG TIN
-----O0O------
BÁO CÁO
HỌC PHẦN: THỰC HÀNH XỬ LÝ ẢNH
Giáo viên hướng dẫn : Ts. Huỳnh Hữu Hưng
Sinh viên thực hiện
: Đinh Ngọc Hưng
Lớp
: 09TLT
Đà Nẵng, tháng 03, năm 2010
Báo cáo: Thực hành Xử Lý Ảnh
GVHD: Ts. Huỳnh Hữu Hưng
I. HƯỚNG DẪN CÀI ĐẶT OPENCV
1. Giới thiệu chung về thư viện OpenCV
OpenCV (Intel Open Source Computer Vision Library) là một thư viện mã
nguồn mở của Intel viết cho xử lý ảnh. OpenCV gồm các hàm được xây dựng cho
việc xử lý thị giác máy thời gian thực (real time computer vision). Các thuật toán
xử lý ảnh thông thường lẫn cao cấp đều được tối ưu hóa bởi các nhà phát triển thư
viện thành các hàm đơn giản và cho người dùng dễ dàng sử dụng. OpenCV hỗ trợ
hai ngôn ngữ chính c/C++ và python.
2. Hướng dẫn cài đặt OpenCV 2.1 với Visual Studio 2008.
Hướng dẫn cài đặt open CV 2.1 trên Visual Studio 2008, các phiên bản khác
tương tự.
Download miễn phí phần mềm OpenCV trên Internet.
Double click vào biểu tượng setup OpenCV 2.1. Cửa sổ setup sẽ hiển thị lên
như sau:
SVTH: Đinh Ngọc Hưng. Lớp: 09TLT
Trang: 2
Báo cáo: Thực hành Xử Lý Ảnh
GVHD: Ts. Huỳnh Hữu Hưng
Nhấn Next, cửa sổ tiếp theo sẽ hiển thị:
Đọc các điều khoản, đồng ý click vào I Agree, Cancel nếu không đồng ý và
hủy bỏ cài đặt. Chọn Iagree, cửa sổ tiếp theo sẽ hiển thị.
SVTH: Đinh Ngọc Hưng. Lớp: 09TLT
Trang: 3
Báo cáo: Thực hành Xử Lý Ảnh
GVHD: Ts. Huỳnh Hữu Hưng
Ở đây chọn Add OpenCV to the system PATH for all users và tiếp tục click
vào Next.
Chọn đường dẫn cài đặt cho chương trình, mặc định sẽ là C:\OpenCV2.1.
Nhần Next để tiếp tục.
SVTH: Đinh Ngọc Hưng. Lớp: 09TLT
Trang: 4
Báo cáo: Thực hành Xử Lý Ảnh
GVHD: Ts. Huỳnh Hữu Hưng
Tiếp tục Next
Ở đây chọn full để chương trình cài đặt toàn bộ thư viện. Sau đó click vào
Install để tiến hành cài đặt.
SVTH: Đinh Ngọc Hưng. Lớp: 09TLT
Trang: 5
Báo cáo: Thực hành Xử Lý Ảnh
GVHD: Ts. Huỳnh Hữu Hưng
Sau một khoản thời gian cài đặt:
Click vào Finish để hoàn tất quá trình cài đặt.
SVTH: Đinh Ngọc Hưng. Lớp: 09TLT
Trang: 6
Báo cáo: Thực hành Xử Lý Ảnh
GVHD: Ts. Huỳnh Hữu Hưng
3. Cấu hình Visual Studio 2008 liên kết với OpenCV.
Mở Visual Studio 2008 lên. Click vào menu Tool, chọn Option, chọn
Projects and Solution.
Tại Show directories for chọn: Include files. Tạo 2 derectory mới dẫn đến
thư mục đã cài OpenCV
Tiếp theo cũng tại Show directories for chọn: Library files.
SVTH: Đinh Ngọc Hưng. Lớp: 09TLT
Trang: 7
Báo cáo: Thực hành Xử Lý Ảnh
GVHD: Ts. Huỳnh Hữu Hưng
Cũng tương tự đối với Source files.
SVTH: Đinh Ngọc Hưng. Lớp: 09TLT
Trang: 8
Báo cáo: Thực hành Xử Lý Ảnh
GVHD: Ts. Huỳnh Hữu Hưng
4. Tạo một project sử dụng OpenCV.
Chọn New Project, ở đây ta chọn Visual C++, Win32, Win32 Console
Application.
SVTH: Đinh Ngọc Hưng. Lớp: 09TLT
Trang: 9
Báo cáo: Thực hành Xử Lý Ảnh
GVHD: Ts. Huỳnh Hữu Hưng
Nhấn chuột phải vào project chọn Properties/Configuration
Properties/Linker/ Input.
Chọn Configuration là Debug. Tại Additional Dependencies đánh vào:
cv210d.lib cvaux210d.lib cxcore210d.lib cxts210d.lib cvhaartraining.lib
highgui210d.lib ml210d.lib opencv_ffmpeg210d.lib.
SVTH: Đinh Ngọc Hưng. Lớp: 09TLT
Trang: 10
Báo cáo: Thực hành Xử Lý Ảnh
GVHD: Ts. Huỳnh Hữu Hưng
II. SỬ DỤNG MỘT SỐ HÀM CƠ BẢN CỦA OPENCV
1. Tải và hiển thị một hình ảnh:
Tạo một file mới và có nội dung như sau:
#include
#include
int main(int argc, char** argv) {
//Tạo một biến img để load hình ảnh vào
IplImage* img = cvLoadImage("./Images/Xoom vs Ipad.jpg");
//Tạo một cửa sổ với tên OpenCV with Visual Studio 2008
cvNamedWindow("OpenCV with Visual Studio 2008",
CV_WINDOW_AUTOSIZE);
//Hiển thị ảnh
cvShowImage("OpenCV with Visual Studio 2008", img);
//Chờ người dùng nhấn phím bất kỳ
cvWaitKey(0);
//Release Image and Destroy Window
cvReleaseImage(&img);
cvDestroyWindow("OpenCV with Visual Studio 2008");
return 0;
}
Chạy chương trình ta được:
2. Chuyển ảnh màu sang ảnh xám.
Sử dụng hàm cvCvtColor
#include
#include
SVTH: Đinh Ngọc Hưng. Lớp: 09TLT
Trang: 11
Báo cáo: Thực hành Xử Lý Ảnh
GVHD: Ts. Huỳnh Hữu Hưng
int main(int argc, char** argv) {
//Tạo một biến img để load hình ảnh vào
IplImage* img = cvLoadImage("./Images/Xoom vs Ipad.jpg");
// Tạo một biến imgGray chứa ảnh xám
IplImage* imgGray = cvCreateImage(cvSize(img->width, img>height), IPL_DEPTH_8U, 1);
cvCvtColor(img, imgGray, CV_BGR2GRAY);
// Kiểm tra ảnh hiện tại phải ảnh xám chưa
if(img->nChannels != 1)
{
// Chuyển ảnh màu thành ảnh xám
cvCvtColor(img, imgGray, CV_BGR2GRAY);
}
else
{
imgGray = img;
}
cvNamedWindow("OpenCV with Visual Studio",
CV_WINDOW_AUTOSIZE);
//Show the image into that window
cvShowImage("OpenCV VS2008", imgGray);
//Wait for a key pressed
cvWaitKey(0);
//Then release image and destroy window
cvReleaseImage(&imgGray);
cvDestroyWindow("Open CV");
return 0;
//Tạo một cửa sổ với tên OpenCV with Visual Studio 2008
cvNamedWindow("OpenCV with Visual Studio 2008",
CV_WINDOW_AUTOSIZE);
//Hiển thị ảnh
cvShowImage("OpenCV with Visual Studio 2008", imgGray);
//Chờ người dùng nhấn phím bất kỳ
cvWaitKey(0);
//Release Image and Destroy Window
cvReleaseImage(&imgGray);
cvDestroyWindow("OpenCV with Visual Studio 2008");
return 0;
}
Kết quả:
SVTH: Đinh Ngọc Hưng. Lớp: 09TLT
Trang: 12
Báo cáo: Thực hành Xử Lý Ảnh
SVTH: Đinh Ngọc Hưng. Lớp: 09TLT
GVHD: Ts. Huỳnh Hữu Hưng
Trang: 13
- Xem thêm -