Professional Documents
Culture Documents
IMAGE ARITHMETIC
diajukan guna memenuhi tugas praktikum Pengolahan Citra Digital dengan dosen
pengampu Vita Permatasari ST, MT.
oleh
Bunga Adina Pramesti
NIM G41171752
#include "cv.h"
#include "highgui.h"
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <assert.h>
#include <math.h>
#include <float.h>
#include <limits.h>
#include <time.h>
#include <ctype.h>
#ifdef _EiC
#define WIN32
#endif
int main()
{
CvCapture* capture = 0;
IplImage *frame, *frame_copy = 0;
IplImage *image = 0;
const char* scale_opt = "--scale=";
int scale_opt_len = (int)strlen(scale_opt);
const char* cascade_opt = "--cascade=";
int cascade_opt_len = (int)strlen(cascade_opt);
int i;
const char* input_name = 0;
detect_and_draw(img);
cvWaitKey(0);
cleanup:
if( image )
{
detect_and_draw( image );
cvWaitKey(0);
cvReleaseImage( &image );
}
else if ( input_name )
{
FILE* f = fopen( input_name, "rt" );
if ( f )
{
char buf[1000+1];
while( fgets( buf, 100, f ) )
{
int len = (int)strlen(buf), c;
while( len > 0 && isspace(buf[len-1]) )
len --;
buf[len] = '\0';
image = cvLoadImage( buf, 1 );
if ( image )
{
detect_and_draw( image );
c = cvWaitKey (0);
if( c == 27 || c== 'q' || c== 'Q' )
break;
cvReleaseImage( &image );
}
}
fclose(f);
}
}
cvDestroyWindow("result");
return 0;
}
CvMat small_img_roi;
CvSeq* nested_objects;
CvPoint center;
int radius;
#include "cv.h"
#include "highgui.h"
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <assert.h>
#include <math.h>
#include <float.h>
#include <limits.h>
#include <time.h>
#include <ctype.h>
#ifdef _EiC
#define WIN32
#endif
int main()
{
CvCapture* capture = 0;
IplImage *frame, *frame_copy = 0;
IplImage *image = 0;
const char* scale_opt = "--scale=";
int scale_opt_len = (int)strlen(scale_opt);
const char* cascade_opt = "--cascade=";
int cascade_opt_len = (int)strlen(cascade_opt);
int i;
const char* input_name = 0;
cvWaitKey(0);
cleanup:
if( image )
{
detect_and_draw( image );
cvWaitKey(0);
cvReleaseImage( &image );
}
else if ( input_name )
{
FILE* f = fopen( input_name, "rt" );
if ( f )
{
char buf[1000+1];
while( fgets( buf, 100, f ) )
{
int len = (int)strlen(buf), c;
while( len > 0 && isspace(buf[len-1]) )
len --;
buf[len] = '\0';
image = cvLoadImage( buf, 1 );
if ( image )
{
detect_and_draw( image );
c = cvWaitKey (0);
if( c == 27 || c== 'q' || c== 'Q' )
break;
cvReleaseImage( &image );
}
}
fclose(f);
}
}
cvDestroyWindow("result");
return 0;
}
CvMat small_img_roi;
CvSeq* nested_objects;
CvPoint center;
int radius;
#include "cv.h"
#include "highgui.h"
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <assert.h>
#include <math.h>
#include <float.h>
#include <limits.h>
#include <time.h>
#include <ctype.h>
#ifdef _EiC
#define WIN32
#endif
int main()
{
CvCapture*capture= 0;
IplImage *frame, *frame_copy=0;
IplImage *image = 0;
const char* scale_opt = "--scale=";
int scale_opt_len = (int) strlen(scale_opt);
const char* cascade_opt = "--cascade=";
int cascade_opt_len = (int) strlen(cascade_opt);
int i;
const char* input_name=0;
storage = cvCreateMemStorage(0);
image=cvLoadImage("our.jpg",3);
height = image->height;
width = image->width;
step = image->widthStep;
channels = image->nChannels;
depth = image->depth;
data = (uchar *)image->imageData;
detect_and_draw(image);
if (cvWaitKey(10)>=0)
goto cleanup;
cvWaitKey(0);
cleanup:
if (image)
{
detect_and_draw(image);
cvWaitKey(0);
cvReleaseImage(&image);
}
else if (input_name)
{
cvDestroyWindow("result");
return 0;
CvMat small_img_roi;
CvSeq* nested_objects;
CvPoint center;
int radius;
}
cvShowImage("result", img);
cvReleaseImage( &gray);
cvReleaseImage( &small_img);
}
Tingkat Kecerahan:
//menambah data dari setiap nilai matriks
B = (data[center.y*step + center.x*channels + 0]);
G = (data[center.y*step + center.x*channels + 1]);
R = (data[center.y*step + center.x*channels + 2]);