Thứ Ba, 30 tháng 11, 2010

Cài đặt OpenCV trên Visual Studio 2010 – Windows 7 (x86-x64)

Thứ Ba, 30 tháng 11, 2010

OpenCV là thư viện mã nguồn mở về Computer Vision do Intel thiết kế, cung cấp các hàm, lớp ứng dụng các thuật toán về xử lý ảnh với ngôn ngữ C/C++.

Để cài đặt và sử dụng OpenCV (phiên bản hiện nay là OpenCV 2.1.0) với Visual Studio 2010 (trên Windows 7 x86_x64), cần phải download các phần sau:

1. OpenCV: thư viện OpenCV 2.1.0. Download file cài đặt tại đây .

2. CMake: phiên bản OpenCV 2.x chỉ cung cấp mã nguồn chứ không tích hợp tập thực thi và cấu hình dự án cho từng mội trường phát triển. Vì thế ta sử dụng CMake để tạo, cấu hình dự án cho phù hợp với môi trường phát triển, cụ thể ở đây là tạo project để build file .dll và .lib để sử dụng OpenCV trong Visual Studio 2010 trên Windows x64. Download file cài đặt tại đây.

Các bước cài đặt OpenCV:

1. Chạy file OpenCV-2.1.0-win32-vs2008.exe để cài đặt OpenCV. Lưu ý khi cài đặt lựa chọn: Add OpenCV to the system PATH. Đường dẫn mặc định của chương trình là: C:\OpenCV2.1

OpenCV Setup

2. Cài đặt CMake.

3. Tiếp theo, ta sẽ sử dụng CMake tạo project để build file thư viện OpenCV phù hợp với Visual Studio 2010. Vào C:\OpenCV2.1, tạo thư mục build để chứa project.

Configure CMake

4. Click nút Configure để lựa chọn môi trường phát triển, ở đây lựa chọn Visual Studio 10 Win64. Click Finish.

Configure CMake for Visual Studio 2010 win64

5. Nhấn chọn tiếp nút Configure lần nữa, sau đó nhấn nút Generate để hoàn tất việc tạo project:

Configure CMake for Visual Studio 2010 win64

6. Vào C:\OpenCV2.1\build, mở file OpenCV.sln vừa tạo:

OpenCVBuild project

7. Khi biên dịch file .dll và .lib cho OpenCV, nên lưu ý chế độ của project là debug hay release. Riêng trong trường hợp này, biên dịch để sử dụng trong Visual Studio 2010 trên Windows 7 x64, để tránh xảy ra lỗi : the application was unable to start correctly 0xc0150002 về sau, nên để chế độ là release.

Release Mode VS 2010

8. Biên dịch chương trình, sau khi biên dịch, ta sẽ có các file OpenCV dll trong C:\OpenCV2.1\build\bin\Release và OpenCV lib trong C:\OpenCV2.1\build\lib\Release. Ngoài ra, các tập tin header .h nằm ở địa chỉ: C:\OpenCV2.1\include\opencv

Build OpenCV with VS2010

9. Tiếp theo, ta sẽ tạo thử một project chạy thử sử dụng thư viện vừa biên dịch trên. Tạo mới Project, đặt tên là OpenCV Demo:

New Project VS2010

10. Cấu hình Visual Studio 2010 để reference các đường dẫn đến các file .h, .dll, .lib. Với phiên bản cũ hơn, chẳng hạn như Visual Studio 2008, khi cấu hình sẽ vào Tools-> Options-> VC++ Directories để cấu hình cho tất cả các project, tuy nhiên, ở Visual Studio 2010 thì chỉ cho phép cấu hình riêng với từng project. Click chuột phải vào project, chọn Properties:

Project Properties - VS 2010

11. Cấu hình VC++ Directories:

  • Include Directories... add: 'C:\OpenCV2.1\include\opencv;'
  • Library Directories:
        • Debug Builds.. add: 'C:\OpenCV2.1\build\lib\Debug’, ‘C:\OpenCV2.1\build\bin\Debug’
    • Release Builds.. add: 'C:\OpenCV2.1\build\lib\Release’, ‘C:\OpenCV2.1\build\bin\Release’
  • Source Directories... add: 'C:\OpenCV2.1\src\cv; C:\OpenCV2.1\src\cvaux; C:\OpenCV2.1\src\cxcore; C:\OpenCV2.1\src\highgui; C:\OpenCV2.1\src\ml;'
  • Linker -> Input -> Additional Dependencies...

    • Debug Builds.. add: 'cv210d.lib; cxcore210d.lib; highgui210d.lib;'
    • Release Builds.. add: 'cv210.lib; cxcore210.lib; highgui210.lib;'

    Configure VC++ Directories - VS2010

    Configure VC++ Directories for OpenCV - VS2010

    Configure VC++ Directories for OpenCV - VS2010

    12. Nội dung file OpenCVDemo.cpp:

    #include "stdafx.h"

    #include <cv.h>
    #include <cxcore.h>
    #include <highgui.h>

    int _tmain(int argc, _TCHAR* argv[])
    {
        IplImage *img = cvLoadImage("test.jpg");
            cvNamedWindow("Image:",1);
            cvShowImage("Image:",img);

            cvWaitKey();
            cvDestroyWindow("Image:");
            cvReleaseImage(&img);

            return 0;

    }

    13. Copy file test.jpg vào C:\Users\USERNAME\Documents\Visual Studio 2010\Projects\OpenCVDemo\OpenCVDemo để chạy thử chương trình. Biên dịch chương trình ta được kết quả:

    OpenCV Demo

  • Thứ Tư, 10 tháng 11, 2010

    Qwiki – công cụ tìm kiếm tương lai?

    Thứ Tư, 10 tháng 11, 2010

    Gõ tên từ khóa, nhấn nút tìm kiếm, và kết quả hiện ra là một video trình bày thông tin, hình ảnh với giọng nữ thuyết minh như vẫn thường gặp trong các phim khoa học giả tưởng. Đó là một trải nghiệm thú vị với Qwiki – công cụ tìm kiếm “có thể nói chuyện”

    Qwiki tóm tắt text và thông tin từ Wikipedia và các nguồn khác để trình bày thông tin về từ khóa cần tìm kiếm một cách trực quan và sinh động. Các nhà phát triển nhấn mạnh rằng Qwiki không phải là một search engine, mà là một platform có thể được phát triển sử dụng vào các ngữ cảnh khác nhau. Hiện thời Qkiwi là ứng dụng để trình bày trải nghiệm thông tin với các loại nội dung, tương lai nó sẽ được phát triển hơn nữa, chẳng hạn như ở buổi demo Qwiki, nó còn được trình diễn dạng báo thức, nhắc nhở trên điện thoại bằng giọng nói.

    Qwiki hiện đang ở phiên bản thử nghiệm alpha, để sử dụng cần phải đăng kí tài khoản. Link: http://www.qwiki.com

    Qwiki AlphaQwiki

    Thử với từ khóa là “Thủ Đức” để tìm thông tin về quận Thủ Đức chẳng hạn, đây là kết quả từ với từ khóa này.