Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 9

PENGOLAHAN CITRA DIGITAL

“PRAKTIKUM 10”
Sistem Warna

Dosen Pengampu :
Vita Permatasari, ST, MT

Oleh :
Ratih Rahmawati (G41171159)
GOLONGAN B
SEMESTER 4

PROGRAM STUDI D-IV REKAM MEDIK


JURUSAN KESEHATAN
POLITEKNIK NEGERI JEMBER
JEMBER
2019
A. PERCOBAAN
 Source Code (Halaman 58)
#include <cv.h>
#include <highgui.h>
#include <stdio.h>

int height, width, step, channels, depth, R,G,B;


IplImage*img;
uchar *data;
int i,j;

void warna()
{
for (i=0; i<height; i++)
{
for(j = 0 ; j < width ; j++)
{
B = (data[i*step + j*channels + 0]);
G = (data[i*step + j*channels + 1]);
R = (data[i*step + j*channels + 2]);

data[i*step +j*channels +0] = B;


data[i*step +j*channels +1] = 0;
data[i*step +j*channels +2] = 0;
}
}
}
void main()
{
img=cvLoadImage("G:\\fruits.jpg",3);
height = img->height;
width = img->width;
step = img->widthStep;
channels = img->nChannels;
data = (uchar *) img->imageData;
warna();
cvNamedWindow("mainWin", CV_WINDOW_AUTOSIZE);
cvShowImage("mainWin", img);
cvReleaseImage(&img );
cvWaitKey(0); //saat di klik, untuk menutup tanda silang
}
 Hasil Running Program
B. TUGAS
1. Gambar dominan berwarna hijau
 Source Code
#include <cv.h>
#include <highgui.h>
#include <stdio.h>

int height, width, step, channels, depth, R,G,B;


IplImage*img;
uchar *data;
int i,j;

void warna()
{
for (i=0; i<height; i++)
{
for(j = 0 ; j < width ; j++)
{
B = (data[i*step + j*channels + 0]);
G = (data[i*step + j*channels + 1]);
R = (data[i*step + j*channels + 2]);

data[i*step +j*channels +0] = B;


data[i*step +j*channels +5] = 0;
data[i*step +j*channels +6] = 0;
}
}
}
void main()
{
img=cvLoadImage("G:\\fruits.jpg",3);
height = img->height;
width = img->width;
step = img->widthStep;
channels = img->nChannels;
data = (uchar *) img->imageData;
warna();
cvNamedWindow("mainWin", CV_WINDOW_AUTOSIZE);
cvShowImage("mainWin", img);
cvReleaseImage(&img );
cvWaitKey(0); //saat di klik, untuk menutup tanda silang
}
 Hasil Running Program
2. Gambar dominan berwarna merah
 Source Code
#include <cv.h>
#include <highgui.h>
#include <stdio.h>

int height, width, step, channels, depth, R,G,B;


IplImage*img;
uchar *data;
int i,j;

void warna()
{
for (i=0; i<height; i++)
{
for(j = 0 ; j < width ; j++)
{
B = (data[i*step + j*channels + 0]);
G = (data[i*step + j*channels + 1]);
R = (data[i*step + j*channels + 2]);

data[i*step +j*channels +0] = B;


data[i*step +j*channels +3] = 0;
data[i*step +j*channels +4] = 0;
}
}
}
void main()
{
img=cvLoadImage("G:\\fruits.jpg",3);
height = img->height;
width = img->width;
step = img->widthStep;
channels = img->nChannels;
data = (uchar *) img->imageData;
warna();
cvNamedWindow("mainWin", CV_WINDOW_AUTOSIZE);
cvShowImage("mainWin", img);
cvReleaseImage(&img );
cvWaitKey(0); //saat di klik, untuk menutup tanda silang
}
 Hasil Running Program
3. Gambar dominan berwarna hitam-putih
 Source Code
#include <cv.h>
#include <highgui.h>
#include <stdio.h>

int height, width, step, channels, depth, R,G,B;


IplImage*img;
uchar *data;
int i,j;

void warna()
{
for (i=0; i<height; i++)
{
for(j = 0 ; j < width ; j++)
{
B = (data[i*step + j*channels + 0]);
G = (data[i*step + j*channels + 1]);
R = (data[i*step + j*channels + 2]);

data[i*step +j*channels +0] = B;


data[i*step +j*channels +1] = G;
data[i*step +j*channels +2] = R;
}
}
}
void main()
{
img=cvLoadImage("G:\\fruits.jpg",3);
height = img->height;
width = img->width;
step = img->widthStep;
channels = img->nChannels;
data = (uchar *) img->imageData;
warna();
cvNamedWindow("mainWin", CV_WINDOW_AUTOSIZE);
cvShowImage("mainWin", img);
cvReleaseImage(&img );
cvWaitKey(0); //saat di klik, untuk menutup tanda silang
}
 Hasil Running Program

4. Jelaskan tiap baris program di bawah ini


void warna() //fungsi warna
{ //tanda fungsi dimulai
for (i=0; i<height; i++) //piksel gambar
{ //tanda fungsi dimulai
for(j = 0 ; j < width ; j++) //piksel gambar
{ //tanda fungsi dimulai
B = (data[i*step + j*channels + 0]); //mencari warna
dominan biru pada citra
G = (data[i*step + j*channels + 1]); //mencari warna
dominan hijau pada citra
R = (data[i*step + j*channels + 2]); //mencari warna
dominan merah pada citra

data[i*step +j*channels +0] = B; //warna biru


dimasukkan pada variabel"data
data[i*step +j*channels +1] = 0; //warna hijau
bernilai 0, tidak dimasukkan dalam variabel"data
data[i*step +j*channels +2] = 0; //warna merah
bernilai 0, tidak dimasukkan dalam variabel"data
} //tanda fungsi berakhir
} //tanda fungsi berakhir
} //tanda fungsi berakhir

You might also like