Lập trình OpenCV C++ Bài 9 : Render Text cơ bản

Hi, chúng ta tiếp tục chủ đề : 

Lập trình OpenCV C++

Bài số 9,  chúng ta sẽ cùng tìm hiểu về cách render một text trên hình ảnh.

Step 1 : Tạo một icon T trên toolbar như sau:

 

Cũng như các chức năng trước, chúng ta tạo hàm xử lý cho text tại lớp MainFrame

 

 

Step2: Chúng ta tạo một lớp vẽ text tại lớp document

void OpenCVGUIDoc::RenderText()
{
    cv::Mat img = m_Mat;
    cv::putText(img,
        "Welcome OpenCV ",
        cv::Point(100, 100), 
        cv::FONT_HERSHEY_COMPLEX_SMALL,
        1.0,
        cv::Scalar(255, 0, 255), 
        1
    );
    ImpShow(img);
}

Chúng ta cùng phân tích xử lý trên.

Hàm putText là hàm cơ bản để render một text trên nền ảnh.

Đối số 1:   Đối tượng Mat của ảnh

Đối số 2:  Nội dung của Text

Đối số 3: Vị trí bắt đầu render text, tôi đang để ở vị trí x = 100, y = 100

Đối số 4: Là kiểu font text trong opencv (khác với font text trong office)

Đối số 5: Là tỉ lệ scale, tôi đang để 1.0, các bạn có thể tăng giảm scale

Đối số 6: Màu sắc, các bạn lưu ý đây là mã BGR ngược với RGB.

Đối số cuối: là giá trị thickness của text

Và đây là kết quả

Rất cơ bản và đơn giản để các bạn có thể viết text trên một tấm ảnh.

 

 

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.