Lib UI sederhana (sangat) yang dibangun di atas OpenCV menggambar primitif. LIBS UI lainnya, seperti IMGUI, memerlukan backend grafis (mis. OpenGL) untuk bekerja, jadi jika Anda ingin menggunakan IMGUI di aplikasi Opencv, Anda harus membuatnya diaktifkan, misalnya. Tidak demikian halnya dengan CVUI, yang hanya menggunakan primitif menggambar opencv untuk melakukan semua rendering (tidak diperlukan OpenGL atau QT).
CVUI adalah lib header-only yang tidak memerlukan build. Cukup tambahkan cvui.h (atau cvui.py ) ke proyek Anda dan Anda siap untuk pergi. Satu -satunya ketergantungan adalah OpenCV (versi 2.x atau 3.x ), yang mungkin sudah Anda gunakan.
Periksa dokumentasi online atau folder contoh untuk mempelajari cara menggunakan CVUI. Penggunaan umum dalam C ++ dan Python ditunjukkan di bawah ini.
Penggunaan dalam C ++:
# include < opencv2/opencv.hpp >
// One (and only one) of your C++ files must define CVUI_IMPLEMENTATION
// before the inclusion of cvui.h to ensure its implementaiton is compiled.
# define CVUI_IMPLEMENTATION
# include " cvui.h "
# define WINDOW_NAME " CVUI Hello World! "
int main ( int argc, const char *argv[])
{
// Create a frame where components will be rendered to.
cv::Mat frame = cv::Mat ( 200 , 500 , CV_8UC3);
// Init cvui and tell it to create a OpenCV window, i.e. cv::namedWindow(WINDOW_NAME).
cvui::init (WINDOW_NAME);
while ( true ) {
// Fill the frame with a nice color
frame = cv::Scalar ( 49 , 52 , 49 );
// Render UI components to the frame
cvui::text (frame, 110 , 80 , " Hello, world! " );
cvui::text (frame, 110 , 120 , " cvui is awesome! " );
// Update cvui stuff and show everything on the screen
cvui::imshow (WINDOW_NAME, frame);
if ( cv::waitKey ( 20 ) == 27 ) {
break ;
}
}
return 0 ;
}Penggunaan di Python:
import numpy as np
import cv2
import cvui
WINDOW_NAME = 'CVUI Hello World!'
# Create a frame where components will be rendered to.
frame = np . zeros (( 200 , 500 , 3 ), np . uint8 )
# Init cvui and tell it to create a OpenCV window, i.e. cv2.namedWindow(WINDOW_NAME).
cvui . init ( WINDOW_NAME )
while True :
# Fill the frame with a nice color
frame [:] = ( 49 , 52 , 49 )
# Render UI components to the frame
cvui . text ( frame , 110 , 80 , 'Hello, world!' )
cvui . text ( frame , 110 , 120 , 'cvui is awesome!' )
# Update cvui stuff and show everything on the screen
cvui . imshow ( WINDOW_NAME , frame )
if cv2 . waitKey ( 20 ) == 27 :
break Hak Cipta (C) 2016 Fernando Bevilacqua. Berlisensi di bawah lisensi MIT.
Lihat semua perubahan dalam file Changelog.