Code schreiben
- 1960
- 289
- Tamina Liebach
Dieses kleine OpenCV -Programm zeigt, wie das RGB -Image in R-, G- und B -Komponenten getrennt wird. Das Programm ist in niedriger Programmierung geschrieben, da in OpenCV die Funktion erstellt wird, die diesen Code effizienter machen würde. Dieses Beispiel vertieft jedoch ein Verständnis dafür, wie das Bild in die Matrix von Pixeln aufgeteilt wird und wie jedes Pixel separat manipuliert werden kann.
Code schreiben
#include #include "cv.H "#include" HighGui.H "Verwenden von Namespace std; int main (int argc, char ** argv) // Farbe im ersten Argument angegeben. ], Cv_load_image_color); iplimage *red = cvcreateimage (cvsize (img-> width, img-> height), img-> tiefe, img-> nchannels); iplimage *green = cvcreateimage (cvsize (img-> width, img-, img- > Höhe), img-> Tiefe, img-> nchannel); iplimage *blue = cvcreateimage (cvsize (img-> breit, img-> Höhe), img-> tiefe, img-> nchannel); // Richten Sie den Zeiger ein So greifen Sie auf IMG-Daten zu uchar * pimg = (uchar *) img-> imagedata; // Zeiger einrichten, um Daten zu schreiben. uchar * pBblue = (uchar *) blau-> imagedata; int i, j, rot, grün, blau, byte; für (i = 0; i Höhe; i ++) für (j = 0; j width; j ++) rot = pimg [i*img-> widthStep + j*img-> nchannels + 2];grün = pimg [i*img-> widthStep + j*img-> nchannels + 1]; blau = pimg [i*img-> widthStep + j*img-> nchannels + 0]; // rote Prädium [i*img-> widthStep + j*img-> nchannels + 2] = rot; // Green pgreen [i*img-> widthStep + j*img-> nchannels + 1] = grün; // Blue pBblue [i*img-> widthStep + j*img-> nchannels + 0] = blau; // Bilder speichern cvsaveimage (argv [2], rot); cvsaveimage (argv [3], grün); cvsaveimage (argv [4], blau); Rückkehr 0;
KOMPILIEREN
g ++ 'pkg-config opencv--cflags-libs' \ separat-rgb.CPP -o separat -rgb
VERWENDUNG
./separat-rgb img.PNG rot.PNG Green.PNG Blau.png
Verwandte Linux -Tutorials:
- Einführung in Vagrant
- GDB -Debugging -Tutorial für Anfänger
- Verschachtelte Schleifen in Bash -Skripten
- So erstellen Sie eine Tkinter -Anwendung mithilfe eines objektorientierten…
- Advanced Bash Regex mit Beispielen
- Mastering -Bash -Skriptschleifen beherrschen
- Wie man mit der Woocommerce -REST -API mit Python arbeitet
- Dinge zu installieren auf Ubuntu 20.04
- Eine Einführung in Linux -Automatisierung, Tools und Techniken
- Python reguläre Ausdrücke mit Beispielen