Category Archives: OpenCV

Cài đặt OpenCV cho Android Studio

  • Giới thiệu

OpenCV là một thư viện mã nguồn mở hàng đầu cho thị giác máy tính (computer vision), xử lý ảnh và máy học, và các tính năng tăng tốc GPU trong hoạt động thời gian thực.

OpenCV được phát hành theo giấy phép BSD, do đó nó hoàn toàn miễn phí cho cả học thuật và thương mại. Nó có các interface C++, C, Python, Java và hỗ trợ Windows, Linux, Mac OS, iOS và Android. OpenCV được thiết kế để tính toán hiệu quả và với sự tập trung nhiều vào các ứng dụng thời gian thực. Được viết bằng tối ưu hóa C/C++, thư viện có thể tận dụng lợi thế của xử lý đa lõi. Được sử dụng trên khắp thế giới, OpenCV có cộng đồng hơn 47 nghìn người dùng và số lượng download vượt quá 6 triệu lần. Phạm vi sử dụng từ nghệ thuật tương tác, cho đến lĩnh vực khai thác mỏ, bản đồ trên web hoặc công nghệ robot. (nguồn Google.com)

  • Cách cài đặt 

Bước 1 : Tải OpenCV cho Android Studio

Vào trang http://opencv.org/releases.html để tải OpenCV tải phiên bản mới nhất tình từ thời điểm này là phiên bản 3.2.0 ,ta chọn gói cho Android

Sau khi dowload thành công ta giải nén file zip vừa tải được

Bước 2 : Tạo project Trong Android Studio 

Ta tiến hành tạo project mới có tên TestOpenCV

Sau đó Click Next để tiếp tục

Ở đây mình để Minimum SDK là API 15 cho hệ điều hành Android 4.0.3

Chọn Project Rỗng sau đó nhấn Next để tiếp tục việc tạo Project

Đặt tên cho Activity Name sau đó nhấn Finish

Bước 3 : Import thư viện OpenCV vào Android Studio

Ta vào thư mục OpenCV mà ta đã tải và giải nén chọn vào sdk – > java và lấy đường dẫn giống hình bên dưới nhấn Ctrl + C để copy đường dẫn này ,hiện tại đường dẫn của mình như trong hình là :

C:\Users\PC\Desktop\MyOpenCV\OpenCV-android-sdk\sdk\java

Sau đó chuyển sang Project Android lúc trước mà ta vừa tạo Chọn File -> New -> Import Module

Màn hình Thêm module mới sẽ hiện ra ta tiến hành dán đường dẫn lúc trước đã copy vào đây sau đó Android Studio sẽ nhận ra được thư viện OpenCV ta nhấn vào next để tiếp tục và tiến hành xác nhận thao tác này

Sau đó ta sẽ thấy nó xuất hiện một thông báo lỗi như hình bên dưới ,hãy bình tĩnh và sửa lỗi thôi

Ta tiến hành click chuột phải vào app và chọn Open Module Settings

Sau đó ta click vào app chọn Tab Dependences -> chọn add và chọn Module dependency

Và một hộp thoại hiện lên ta tiến hành việc chọn Module :openCVLibrary320 cho Project sau đó click OK

Thư viện đã được thêm vào click OK 1 lần nữa nhé

Tiếp theo ta vào activity_main.xml vào phần Design để chọn cho đúng cấu hình API hỗ trợ ở đây mình sử dụng Android API 22

 

Mọi thứ đến giờ có lẽ ổn ta tiến hành chọn phần thể hiện thư mục là Project chọn đến openCVLibrary320 tìm đến source và click vào build.gradle để tiến hành thiết lập lại thông tin cho đúng .

CompileSdkVersion mình điền vào là 22 do lúc trước đó mình chạy trên Android API 22 targetSdkVersion cũng vậy.

minSdkVersion thì lúc đầu mình tạo project là 15 đúng không ?

buildToolsVersion cứ để mặc định của nó là 23.0.2

Ta tiến hành đồng bộ Project thử xem có lỗi gì xảy ra nữa không nhé .Để đồng bộ project ta chọn vào File -> Synchronize hoặc ấn tổ hợp phím Ctrl + Alt + Y .

Nếu có thông báo lỗi như hình bên dưới thì Click vào link xanh xanh bên dưới để cài đặt Built Tools phiên bản 23.0.2 cho Project

Nó đang tiến hành việc tải và cài đặt bạn đợi xí nhé ,sau khi tải về đồng bộ cho Project 1 lần nữa như bước trước đó.

Có lẽ mọi thứ vẫn ổn nhưng ta phải tiến hành add thêm các file trong phần native library nữa nó mới chạy được thành công nhé ,ta vào lại Folder ban đầu mà ta tiến hành giải nén vào sdk -> native -> libs sẽ thấy các thư mục như hình bên dưới ta tiến hành copy tất cả các thư mục này ra 1 folder ngoài Desktop cho dễ xử lý .

Đặt tên Folder đó là jniLibs và copy toàn bộ các Folder đó vào đây .

Sau đó vào từng thư mục xóa tất cả các file có đuôi .a ở tất cả các thư mục

arm64-v8a

armeabi

armeabi-v7a

mips

mips64

x86

x86_64

chỉ để lại file có đuôi .so trong các thư mục đó (mỗi folder chỉ có 1 file .so)

Để lại 1 file .so tại mỗi thư mục

Sau khi hoàn thành các bươc trên ta tiến hành copy Folder jniLibs Vào phần thư mục main của project như hình

Trong  actyvity_main.xml ta vào phần Text để thiết kế giao diện có 1 TextView như sau

Sau đó ta chuyển qua lớp MainActivity.java để tiến hành viết code Test chương trình ,nếu OpenCV mà Load thành công thì TextView sẽ có dòng chữ “Load OpenCV Successful”

Nếu sau khi viết code Start chương trình thành công thi sẽ được như hình bên dưới

Các bạn thử cài đặt xem có được không nhé nếu có gì sai sót các bạn để lại bình luận bên dưới để xây dựng bài viết nhé .Mình sẽ ra tiếp Series về OpenCV ,tại mình cũng đang thích thú về nó .Chúc các bạn tạo Project thành công !