Tulis kode

Tulis kode

Program OpenCV kecil ini menunjukkan cara memisahkan gambar RGB menjadi komponen R, G dan B. Program ini ditulis dalam pemrograman tingkat rendah karena ada fungsi build in Opencv yang akan membuat kode ini lebih efisien. Namun, contoh ini memperdalam pemahaman tentang bagaimana gambar dibagi menjadi matriks piksel dan bagaimana setiap piksel dapat dimanipulasi secara terpisah.

Tulis kode

#include #include "CV.h "#include" highgui.h "Menggunakan namespace std; int main (int argc, char ** argv) // memuat warna img yang ditentukan oleh argumen pertama // iPlImage *img = cvloadImage (argv [1]); iPlimage *img = cvloadImage (argv [1 ], Cv_load_image_color); iPlImage *red = cvCreateImage (cvsize (img-> width, img-> tinggi), img-> kedalaman, img-> nchannels); iPlimage *green = cvCreateImage (cvsize (iMg-> width, iMg- > tinggi), img-> kedalaman, img-> nchannels); iPlimage *blue = cvCreateImage (cvsize (img-> lebar, img-> tinggi), img-> kedalaman, img-> nchannels); // setup pointer untuk mengakses data img uchar * pimg = (uchar *) img-> imagedata; // setup pointer untuk menulis data uchar * pred = (uchar *) red-> imageData; char * pgreen = (uchar *) green-> imageedata; uchar * pblue = (uchar *) blue-> imageTa; int i, j, merah, hijau, biru, byte; untuk (i = 0; i height; i ++) for (j = 0; j width; j ++)  Red = pimg [i*img-> widthstep + j*img-> nchannels + 2];green = pimg [i*img-> widthstep + j*img-> nchannels + 1]; blue = pimg [i*img-> widthstep + j*img-> nchannels + 0]; // pred merah [i*img-> widthstep + j*img-> nchannels + 2] = merah; // pgreen hijau [i*img-> widthstep + j*img-> nchannels + 1] = green; // blue pblue [i*img-> widthstep + j*img-> nchannels + 0] = biru;  // Simpan gambar cvsaveImage (argv [2], merah); CVSaveImage (Argv [3], hijau); CVSaveImage (Argv [4], biru); kembali 0;  

MENYUSUN

g ++ 'pkg-config opencv --cflags --libs' \ terpisah-rgb.CPP -O terpisah -RGB 

PENGGUNAAN

./terpisah-RGB IMG.png merah.png hijau.png biru.png

Tutorial Linux Terkait:

  • Pengantar Vagrant
  • Tutorial debugging GDB untuk pemula
  • Loop bersarang dalam skrip bash
  • Cara Membangun Aplikasi Tkinter Menggunakan Objek Berorientasi…
  • Lanjutan regex bash canggih dengan contoh
  • Menguasai loop skrip bash
  • Bagaimana bekerja dengan WooCommerce Rest API dengan Python
  • Hal -hal yang harus diinstal pada ubuntu 20.04
  • Pengantar Otomatisasi Linux, Alat dan Teknik
  • Ekspresi reguler Python dengan contoh