791. Linux Kullanıcıları Derneği Üyesi

Ebat: px
Şu sayfadan göstermeyi başlat:

Download "791. Linux Kullanıcıları Derneği Üyesi"

Transkript

1 O p e n C V i l e B i l g i s a y a r l a G ö r m e

2 O p e n C V i l e B i l g i s a y a r l ı G ö r m e İsmet YALABIK 791. Linux Kullanıcıları Derneği Üyesi Araştırma Görevlisi Görüntü İşleme ve Örüntü Tanıma Laboratuvarı Bilgisayar Mühendisliği Bölümü Orta Doğu Teknik Üniversitesi ismet@ceng.metu.edu.tr web: 2

3 B i l g i s a y a r l ı G ö r m e N e d i r? Göz-Beyin İlişkisi Görme, Tanıma, Algılama Görüntünün Algılanması Nesnelerin Ayrıştırılması Nesnelerin Tanınması Nesnelerin Eşleştirilmesi 3

4 O p e n C V N e d i r? İlgili alanlardaki araştırma ve geliştirmeyi desteklemek için evrensel bir araç kutusu oluşturmak Bilgisayarla Görme İnsan-Bilgisayar Etkileşimi Robot Bilimi Biyoenformatik Güvenlik Görüntüleme 4

5 O p e n C V ' n i n A n a h t a r Ö z e l l i k l e r i Cross-platform Orta ile ileri seviyeli API 350'den fazla C fonksiyonu Birkaç C++ sınıfı Phyton eklentileri Çok az kütüphane bağımlılığı IPP(Intel Performance Primitives) desteği 5

6 O p e n C V T a r i h ç e s i Başlangıç: 2000, intel sourceforge.net'e geçiş CVPR-2001 Stanley aracının anahtar kütüphanesi (2M $lık darpa yarışı birincisi) 6

7 O p e n C V K ü t ü p h a n e s i A n a Y a p ı s ı Temel Yapılar Nokta Dikdörtgen Ölçüt Matris Görüntü Ayrık Matris 7

8 O p e n C V : T e m e l Y a p ı l a r typedef struct CvPoint { int x; /* x-coordinate, usually zero-based */ int y; /* y-coordinate, usually zero-based */ } CvPoint; typedef struct CvRect { int x; /* x-coordinate of the left-most rectangle corner[s] */ int y; /* y-coordinate of the top-most or bottom-most rectangle corner[s] */ int width; /* width of the rectangle */ int height; /* height of the rectangle */ } CvRect; 8

9 O p e n C V : T e m e l Y a p ı l a r typedef struct _IplImage { int nsize; /* sizeof(iplimage) */ int ID; /* version (=0)*/ int nchannels; /* Most of OpenCV functions support 1,2,3 or 4 channels */ int alphachannel; /* ignored by OpenCV */ int depth; /* pixel depth in bits: IPL_DEPTH_8U, IPL_DEPTH_8S, IPL_DEPTH_16U, IPL_DEPTH_16S, IPL_DEPTH_32S, IPL_DEPTH_32F and IPL_DEPTH_64F are supported */ char colormodel[4]; /* ignored by OpenCV */ char channelseq[4]; /* ditto */ int dataorder; /* 0 - interleaved color channels, 1 - separate color channels. cvcreateimage can only create interleaved images */ int origin; /* 0 - top-left origin, 1 - bottom-left origin (Windows bitmaps style) */ int align; /* Alignment of image rows (4 or 8). OpenCV ignores it and uses widthstep instead */ int width; /* image width in pixels */ int height; /* image height in pixels */ struct _IplROI *roi; /* image ROI. when it is not NULL, this specifies image region to process */ struct _IplImage *maskroi; /* must be NULL in OpenCV */ void *imageid; /* ditto */ struct _IplTileInfo *tileinfo;/* ditto */ int imagesize; /* image data size in bytes (=image->height*image->widthstep in case of interleaved data)*/ char *imagedata; /* pointer to aligned image data */ int widthstep; /* size of aligned image row in bytes */ int BorderMode[4]; /* border completion mode, ignored by OpenCV */ int BorderConst[4]; /* ditto */ char *imagedataorigin; /* pointer to a very origin of image data (not necessarily aligned) - it is needed for correct image deallocation */ } IplImage; 9

10 O p e n C V : T e m e l O p e r a s y o n l a r Aritmetik, Mantık ve Karşılaştırmalar Matris Aritmetiği, Mantık İşlemeleri İstatistik Permütasyonlar ve Dönüşümler Ayırma, Çevirme, Tekrarlama Lineer Cebir Normalizasyon, Çapraz Çarpım, Ters Rastgele Sayı Üreticisi 10

11 O p e n C V : T e m e l V e r i Y a p ı l a r ı Hafıza depoları Sekanslar Kümeler Çizgeler Ağaçlar 11

12 O p e n C V : T e m e l V e r i Y a p ı l a r ı #define CV_SEQUENCE_FIELDS() \ int flags; /* micsellaneous flags */ \ int header_size; /* size of sequence header */ \ struct CvSeq* h_prev; /* previous sequence */ \ struct CvSeq* h_next; /* next sequence */ \ struct CvSeq* v_prev; /* 2nd previous sequence */ \ struct CvSeq* v_next; /* 2nd next sequence */ \ int total; /* total number of elements */ \ int elem_size; /* size of sequence element in bytes */ \ char* block_max; /* maximal bound of the last block */ \ char* ptr; /* current write pointer */ \ int delta_elems; /* how many elements allocated when the sequence grows (sequence granularity) */ \ CvMemStorage* storage; /* where the seq is stored */ \ CvSeqBlock* free_blocks; /* free blocks list */ \ CvSeqBlock* first; /* pointer to the first sequence block */ typedef struct CvSeq { CV_SEQUENCE_FIELDS() } CvSeq; 12

13 O p e n C V : K a l a n A n a F o n k y o n l a r Eğri ve Şekil Çizme Fonksiyonları Metin Yazma Fonksiyonları Dosya Depoları, okuma/yazma Hata kontrolü Hafıza Yönetimi ve sistem çağrıları 13

14 O p e n C V : Ş e k i l Ç i z m e Şekil, Çizgi, Metin Uygulaması uygulama-1 (edge) 14

15 O p e n C V : G ö r ü n t ü İ ş l e m e Kenar, Köşe İşlemleri İnterpolasyon, Geometrik Transformasyon Morfolojik İşlemler Filtreler ve Renk Dönüşümleri Görüntü Bölütleme Özel Görüntü Dönüşümleri Histogram Eşleştirme 15

16 O p e n C V : K e n a r l a r, K ö ş e l e r Sobel Filtresi Laplace Filtresi Canny Kenar Yöntemi Harris Köşe Yöntemi Minimum Eigen Değeri Yöntemi 16

17 O p e n C V : C a n n y K e n a r B u l m a Canny Kenar Bulma Uygulaması uygulama-2 (edge) 17

18 O p e n C V : I n t e r p o l a s y o n v e G e o m e t r i k D ö n ü ş ü m l e r Büyütme, küçültme Affine Dönüşümler Rotasyon Logpolar Double-click to add graphics 18

19 O p e n C V : M o r f o l o j i k İ ş l e m l e r Erode Dilate Yapısal Elemanın Oluşturulması Gelişmiş Morfolojik Dönüşümler 19

20 O p e n C V : M o r f o l o j i k İ ş l e m l e r Morfoloji Uygulaması uygulama-3 (morphology) 20

21 O p e n C V : F i l t r e l e r v e R e n k D ö n ü ş ü m l e r i Düzleştirme Konvolüsyon Filtreleri İntegral Görüntü Eşik Uygulama Renk Uzayı Dönüşümleri 21

22 O p e n C V : P i r a m i t l e r Piramit Bölütleme Uygulaması uygulama-4 (pyramid_segmentation) 22

23 O p e n C V : G ö r ü n t ü B ö l ü t l e m e FloodFill, Birleşik Bileşenleri Bulma 23

24 O p e n C V : G ö r ü n t ü B ö l ü t l e m e Birleşik Bileşenler Uygulaması uygulama-5 (contours) 24

25 O p e n C V : G ö r ü n t ü B ö l ü t l e m e Watershed Uygulaması uygulama-6 (watershed) 25

26 O p e n C V : Ö z e l G ö r ü n t ü D ö n ü ş ü m l e r i Hough Çizgi Dönüşümleri Mesafe Dönüşümleri 26

27 O p e n C V : Ö z e l G ö r ü n t ü D ö n ü ş ü m l e r i Hough Çizgi Dönüşümü Uygulaması uygulama-7 (houghlines) 27

28 O p e n C V : Ö z e l G ö r ü n t ü D ö n ü ş ü m l e r i Laplace Dönüşümü Uygulaması uygulama-8 (laplace) 28

29 O p e n C V : H i s t o g r a m Histogram Uygulaması uygulama-9 (demhist) 29

30 O p e n C V : H i s t o g r a m cvlut( src_image, dst_image, lut_mat ); cvshowimage( "image", dst_image ); cvcalchist( &dst_image, hist, 0, NULL ); cvzero( dst_image ); cvgetminmaxhistvalue( hist, 0, &max_value, 0, 0 ); cvscale( hist->bins, hist->bins, ((double)hist_image- >height)/max_value, 0 ); /*cvnormalizehist( hist, 1000 );*/ cvset( hist_image, cvscalarall(255), 0 ); bin_w = cvround((double)hist_image->width/hist_size); for( i = 0; i < hist_size; i++ ) cvrectangle( hist_image, cvpoint(i*bin_w, hist_image->height), cvpoint((i+1)*bin_w, hist_image->height - cvround(cvgetreal1d(hist->bins,i))), cvscalarall(0), -1, 8, 0 ); cvshowimage( "histogram", hist_image ); } int main( int argc, char** argv ) { // Load the source image. HighGUI use. src_image = cvloadimage( argc == 2? argv[1] : file_name, 0 ); dst_image = cvcloneimage(src_image); hist_image = cvcreateimage(cvsize(320,200), 8, 1); hist = cvcreatehist(1, &hist_size, CV_HIST_ARRAY, ranges, 1); lut_mat = cvcreatematheader( 1, 256, CV_8UC1 ); cvsetdata( lut_mat, lut, 0 ); cvnamedwindow("image", 0); cvnamedwindow("histogram", 0); cvcreatetrackbar("brightness", "image", &_brightness, 200, update_brightcont); cvcreatetrackbar("contrast", "image", &_contrast, 200, update_brightcont); update_brightcont(0); cvwaitkey(0); cvreleaseimage(&src_image); cvreleaseimage(&dst_image); cvreleasehist(&hist); if(!src_image ) { printf("image was not loaded.\n"); return -1; } 30 } return 0; #ifdef _EiC main(1,"demhist.c"); #endif

31 O p e n C V : H i s t o g r a m #ifdef _CH_ #pragma package <opencv> #endif #ifndef _EiC #include "cv.h" #include "highgui.h" #include <stdio.h> #endif char file_name[] = "baboon.jpg"; int _brightness = 100; int _contrast = 100; int hist_size = 64; float range_0[]={0,256}; float* ranges[] = { range_0 }; IplImage *src_image = 0, *dst_image = 0, *hist_image = 0; CvHistogram *hist; uchar lut[256]; CvMat* lut_mat; /* brightness/contrast callback function */ void update_brightcont( int arg ) { int brightness = _brightness - 100; int contrast = _contrast - 100; int i, bin_w; float max_value = 0; 31 if( contrast > 0 ) { double delta = 127.*contrast/100; double a = 255./( delta*2); double b = a*(brightness - delta); for( i = 0; i < 256; i++ ) { int v = cvround(a*i + b); if( v < 0 ) v = 0; if( v > 255 ) v = 255; lut[i] = (uchar)v; } } else { double delta = -128.*contrast/100; double a = (256.-delta*2)/255.; double b = a*brightness + delta; for( i = 0; i < 256; i++ ) { int v = cvround(a*i + b); if( v < 0 ) v = 0; if( v > 255 ) v = 255; lut[i] = (uchar)v; } }

32 O p e n C V : Y a p ı s a l A n a l i z Kontur İşleme Kontur alanı, çizgi uzunluğu, kontur ağaçları İşlemsel Geometri İki kareyi kapsayan en küçük kare Elips oturtma, çizgi oturtma convexhull Düzlemsel Alt Bölümlemeler Voronin Diyagramları 32

33 O p e n C V : Y a p ı s a l A n a l i z Convexhull Uygulaması uygulama-10 (convexhull) 33

34 O p e n C V : H a r e k e t A n a l i z i, N e s n e İ z l e m e Arka Plan İstatistiklerinin Toplanması Hareket Şablonları Nesne İzleme Optik Akış Tahmin Ediciler 34

35 O p e n C V : H a r e k e t A n a l i z i, N e s n e İ z l e m e Nesne İzleme Uygulaması uygulama-11 (camshiftdemo) 35

36 O p e n C V : Ö r ü n t ü T a n ı m a Nesne Tanıma Nesne Tanımaya Yönelik Basit Haar Özniteliklerinin Çıkarılması Yüz Bulma Uygulaması 36

37 O p e n C V : Y ü z B u l m a #include "cv.h" #include "highgui.h" CvHaarClassifierCascade* load_object_detector( const char* cascade_path ) { return (CvHaarClassifierCascade*)cvLoad( cascade_path ); } void detect_and_draw_objects( IplImage* image, CvHaarClassifierCascade* cascade, int do_pyramids ) { IplImage* small_image = image; CvMemStorage* storage = cvcreatememstorage(0); CvSeq* faces; int i, scale = 1; /* if the flag is specified, down-scale the input image to get a performance boost w/o loosing quality (perhaps) */ if( do_pyramids ) { small_image = cvcreateimage( cvsize(image->width/2,image->height/2), IPL_DEPTH_8U, 3 ); cvpyrdown( image, small_image, CV_GAUSSIAN_5x5 ); scale = 2; } /* use the fastest variant */ faces = cvhaardetectobjects( small_image, cascade, storage, 1.2, 2, CV_HAAR_DO_CANNY_PRUNING ); /* draw all the rectangles */ 37

38 O p e n C V : Y ü z B u l m a for( i = 0; i < faces->total; i++ ) { /* extract the rectanlges only */ CvRect face_rect = *(CvRect*)cvGetSeqElem( faces, i, 0 ); cvrectangle( image, cvpoint(face_rect.x*scale,face_rect.y*scale), cvpoint((face_rect.x+face_rect.width)*scale, (face_rect.y+face_rect.height)*scale), CV_RGB(255,0,0), 3 ); } } if( small_image!= image ) cvreleaseimage( &small_image ); cvreleasememstorage( &storage ); /* takes image filename and cascade path from the command line */ int main( int argc, char** argv ) { IplImage* image; if( argc==3 && (image = cvloadimage( argv[1], 1 ))!= 0 ) { CvHaarClassifierCascade* cascade = load_object_detector(argv[2]); detect_and_draw_objects( image, cascade, 1 ); cvnamedwindow( "test", 0 ); cvshowimage( "test", image ); cvwaitkey(0); cvreleasehaarclassifiercascade( &cascade ); cvreleaseimage( &image ); } return 0; } 38

39 O p e n C V : D i ğ e r Ö z e l l i k l e r Kamera Kalibrasyonu Poz Tahmini 39

40 N i y e O p e n C V? Birçok kullanılabilir ve literatürde başarılı çalışmalara yer veriyor Özellikle işlemci bazında optimizasyon ile programların çok hızlı çalışması sağlanıyor Çok basit bir kullanım olanağı sağlıyor Gelişmiş arayüz fonkyonları sayesinde kullanıcı etkileşimini yükseltiyor Kamera kullanımını kolay kılan özellikleri 40

41 N i y e Ö z g ü r Y a z ı l ı m? Paylaşarak hayatımızı güzelleştirmek için... 41

42 O p e n C V OpenCV'i Nereden Bulabilirim?

43 O p e n C V Teşekkürler, Sorularınız??? 43

GörüntüĐşlemede Yeni Bir Soluk, OpenCV

GörüntüĐşlemede Yeni Bir Soluk, OpenCV GörüntüĐşlemede Yeni Bir Soluk, OpenCV Arş. Gör. Bilgisayar Mühendisliği Bölümü Đstanbul Ticaret Üniversitesi OPENCV Açık kaynak kodlu Bilgisayarla Görme Kütüphanesi ( INTEL, C++ ) INTEL s OPEN SOURCE

Detaylı

AMAÇ Araçlardaki Kamera Sistemleri

AMAÇ Araçlardaki Kamera Sistemleri SUNU PLANI AMAÇ OPEN CV GÖRÜNTÜ EŞİKLEME KENAR BULMA ŞEKİL BULMA GÖRÜNTÜ GENİŞLETME VE BOZMA GÖRÜNTÜ DOLDURMA AFFİNE DÖNÜŞÜMÜ PERSPEKTİF DÖNÜŞÜM KUŞ BAKIŞI GÖRÜNTÜ DÖNÜŞÜMÜ AMAÇ Araçlardaki Kamera Sistemleri

Detaylı

Görüntü İşlemede Yeni Bir Soluk, OPENCV

Görüntü İşlemede Yeni Bir Soluk, OPENCV Akademik Bilişim 10 - XII. Akademik Bilişim Konferansı Bildirileri Görüntü İşlemede Yeni Bir Soluk, OPENCV İstanbul Ticaret Üniversitesi, Bilgisayar Mühendisliği Bölümü, İstanbul eeristi@iticu.edu.tr Özet:

Detaylı

Final Sınavı Soruları Bahar 2018

Final Sınavı Soruları Bahar 2018 Sayfa#1 Manisa Celal Bayar Üniversitesi Yazılım Mühendisliği Bölümü YZM 2116 Veri Yapıları Dersi Final Sınavı Soruları Bahar 2018 Süre: 70 Dakika Adı ve Soyadı YANIT ANAHTARI Öğrenci Numarası Grubu İmza

Detaylı

Struct VE GÖSTERİCİLER FONKSİYONLARDA STRUCT KULLANIMI Programlama dilleri hafta -

Struct VE GÖSTERİCİLER FONKSİYONLARDA STRUCT KULLANIMI Programlama dilleri hafta - BİLECİK ŞEYH EDEBALİ ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ Struct VE GÖSTERİCİLER FONKSİYONLARDA STRUCT KULLANIMI Programlama dilleri 1-14. hafta - Araş. Gör. Nesibe YALÇIN

Detaylı

OpenCV ile Kamera Kalibrasyonu. Camera Calibration with OpenCV. Eser SERT 1, Deniz TAŞKIN 2, Cem TAŞKIN 3, Nurşen TOPÇUBAŞI 4, İrfan KÖPRÜCÜ 5

OpenCV ile Kamera Kalibrasyonu. Camera Calibration with OpenCV. Eser SERT 1, Deniz TAŞKIN 2, Cem TAŞKIN 3, Nurşen TOPÇUBAŞI 4, İrfan KÖPRÜCÜ 5 OpenCV ile Kamera Kalibrasyonu Eser SERT 1, Deniz TAŞKIN 2, Cem TAŞKIN 3, Nurşen TOPÇUBAŞI 4, İrfan KÖPRÜCÜ 5 1 Trakya Üniversitesi, Teknik Bilimler Meslek Yüksek Okulu, Edirne 2,5 Trakya Üniversitesi,

Detaylı

Stack Islemleri. Postfix ve Infix notasyonlari. Stack ozellikleri

Stack Islemleri. Postfix ve Infix notasyonlari. Stack ozellikleri Veri Yapilari Stacks Stacks Queues Lists Stack nedir Stack de tanimli islemler Push Pop Empty Full Inialization Stack in gerceklestirilmesi 10/7/2004 Veri yapilari 3.1 10/7/2004 Veri yapilari 3.2 Stack

Detaylı

Big Endian & Little Endian K.Atilla Toker İzmir Üniversitesi Meslek Yüksek Okulu Bilgisayar Programcılığı 11-2009 Ver:01

Big Endian & Little Endian K.Atilla Toker İzmir Üniversitesi Meslek Yüksek Okulu Bilgisayar Programcılığı 11-2009 Ver:01 Bilgisayar i Mimarisii i Big Endian & Little Endian K.Atilla Toker İzmir Üniversitesi Meslek Yüksek Okulu Bilgisayar Programcılığı 11-2009 Ver:01 İZMIR ÜNIVERSITESI İZMIR ÜNIVERSITESI MYO BILGISAYAR PROGRAMLAMA

Detaylı

Multicore/Multithread Programlama

Multicore/Multithread Programlama Multicore/Multithread Programlama Onur Tolga Şehitoğlu Bilgisayar Mühendisliği 7 Şubat 2008 Başlıklar 1 Gereksinimi Dal ile Süreç Çok İşlemci ve Dal Modelleri Neden Çoklu Dal Programlama? 2 Çok İşlemci/Çok

Detaylı

AHMET YESEVİ ÜNİVERSİTESİ BİLİŞİM SİSTEMLERİ VE MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ LİSANS DÖNEM ÖDEVİ

AHMET YESEVİ ÜNİVERSİTESİ BİLİŞİM SİSTEMLERİ VE MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ LİSANS DÖNEM ÖDEVİ AHMET YESEVİ ÜNİVERSİTESİ BİLİŞİM SİSTEMLERİ VE MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ LİSANS DÖNEM ÖDEVİ TBIL-303-01 Veri Yapıları ve Algoritmalar LABİRENT HAZIRLAYAN 122132151 Fahri DÖNMEZ DANIŞMAN

Detaylı

Fall Object-Oriented Programming Laboratory 03

Fall Object-Oriented Programming Laboratory 03 2017-2018 Fall Object-Oriented Programming Laboratory 03 17.10.2017 1. Çok Dosyalı Proje. Aşağıda, katilimci structure ı için oluşturulmuş bir programın kaynak kodu verilmiştir. Kaynak kodu okuyun ve programın

Detaylı

BBS 514 YAPISAL PROGRAMLAMA (STRUCTURED PROGRAMMING)

BBS 514 YAPISAL PROGRAMLAMA (STRUCTURED PROGRAMMING) 1 BBS 514 YAPISAL PROGRAMLAMA (STRUCTURED PROGRAMMING) 6 LECTURE 10: STRUCTURES Lecturer: Burcu Can BBS 514 - Yapısal Programlama (Structured Programming) Structures (Yapılar) A structure is a collection

Detaylı

1 PROGRAMLAMAYA GİRİŞ

1 PROGRAMLAMAYA GİRİŞ İÇİNDEKİLER IX İÇİNDEKİLER 1 PROGRAMLAMAYA GİRİŞ 1 Problem Çözme 1 Algoritma 1 Algoritmada Olması Gereken Özellikler 2 Programlama Dilleri 6 Programlama Dillerinin Tarihçesi 6 Fortran (Formula Translator)

Detaylı

#ifndef VEKTOR_H #define VEKTOR_H. struct vektor_s { double x; double y; double z; }; typedef struct vektor_s vektor_t;

#ifndef VEKTOR_H #define VEKTOR_H. struct vektor_s { double x; double y; double z; }; typedef struct vektor_s vektor_t; 02.10.2018 2018-2019 Güz Object-Oriented Programming Lab 01 Ön Çalışma - 1. soruyu çözün. - 2. soruda istenen fonksiyonların argümanlarına ve return türlerine karar verin. Nedenlerinizi kısaca açıklayın.

Detaylı

Sınav tarihi : Süre : 60 dak.

Sınav tarihi : Süre : 60 dak. Selçuk Üniversitesi, Mühendislik Fakültesi, Harita Mühendisliği Bölümü Final Sınavı Test Soruları Adı soyadı : Öğrenci no : Sınav tarihi : 31.05.2016 Süre : 60 dak. 1. Ekranda ne görüntülenir? int i =

Detaylı

Android Platformunda OpenCV İle Görüntü İşleme

Android Platformunda OpenCV İle Görüntü İşleme Android Platformunda OpenCV İle Görüntü İşleme Çiğdem Çavdaroğlu 12.05.2015 Özgeçmiş Yıldız Teknik Üniversitesi 2003: Matematik Mühendisliği, Lisans 2006: UA, Fotogrametri ve CBS, Yüksek Lisans 2013: UA,

Detaylı

Araç Destek Sistemleri İçin Kuş Bakışı Görüntü Dönüşümü. Bird s Eye View Transformation For Vehicle Assistance Systems

Araç Destek Sistemleri İçin Kuş Bakışı Görüntü Dönüşümü. Bird s Eye View Transformation For Vehicle Assistance Systems Araç Destek Sistemleri İçin Kuş Bakışı Görüntü Dönüşümü Turgut DOĞAN 1, Eser SERT 2, Deniz TAŞKIN 3 1,3 Trakya Üniversitesi, Bilgisayar Mühendisliği Bölümü, Edirne 2 Trakya Üniversitesi, Teknik Bilimler

Detaylı

/* Çember alanını hesaplar */

/* Çember alanını hesaplar */ ÖNİŞLEME KOMUTLARI /* Çember alanını hesaplar */ #include #define PI 3.14 int yaricap; float alan; printf( "Çemberin yarı çapını giriniz> " ); scanf( "%d", &yaricap ); alan = PI * yaricap * yaricap;

Detaylı

Görüntü Đşlemede Yeni Bir Soluk, OPENCV

Görüntü Đşlemede Yeni Bir Soluk, OPENCV Görüntü Đşlemede Yeni Bir Soluk, OPENCV Ezgi Erişti 1 1 Đstanbul Ticaret Üniversitesi, Bilgisayar Mühendisliği Bölümü, Đstanbul eeristi@iticu.edu.tr Özet: OpenCV, Intel tarafından geliştirilerek BSD lisansı

Detaylı

8. İŞARETCİLER (POINTERS)

8. İŞARETCİLER (POINTERS) 8. İŞARETCİLER (POINTERS) Verilerin bilgisayar hafızasında tutulduğu fiziki alan adres olarak tanımlanabilir. Adres, hem donanımla hem de yazılımla ilişkilidir. Donanımsal açıdan adres bellekte yer gösteren

Detaylı

Object-Oriented Programming Laboratuvar 11

Object-Oriented Programming Laboratuvar 11 Object-Oriented Programming Laboratuvar 11 19.12.2017 We use abstract class Employee to represent the general concept of an employee. The classes that derive directly from Employee are SalariedEmployee

Detaylı

BBS 514 YAPISAL PROGRAMLAMA (STRUCTURED PROGRAMMING)

BBS 514 YAPISAL PROGRAMLAMA (STRUCTURED PROGRAMMING) 1 BBS 514 YAPISAL PROGRAMLAMA (STRUCTURED PROGRAMMING) LECTURE 3: ASSIGNMENT OPERATOR Lecturer: Burcu Can BBS 514 - Yapısal Programlama (Structured Programming) 2 Lexical Elements (Sözcüksel Elemanlar)

Detaylı

YAPILAR BİRLİKLER SAYMA SABİTLERİ/KÜMELERİ. 3. Hafta

YAPILAR BİRLİKLER SAYMA SABİTLERİ/KÜMELERİ. 3. Hafta YAPILAR BİRLİKLER SAYMA SABİTLERİ/KÜMELERİ 3. Hafta YAPILAR Farklı veri tipindeki bilgilerin bir araya gelerek oluşturdukları topluluklara yapı (structure) denir. Yani yapılar, birbiriyle ilişkili değişkenlerin

Detaylı

Görüntüden OpenCV ile Duygu Analizi

Görüntüden OpenCV ile Duygu Analizi Görüntüden OpenCV ile Duygu Analizi Mehmet Emin Tenekeci 1, Abdülkadir Gümüşçü 2, Ahmet Baytak 1, Emrah Aslan 1 1,3 Harran Üniversitesi, Bilgisayar Mühendisliği Bölümü, Şanlıurfa 2 Harran Üniversitesi,

Detaylı

GÖRÜNTÜ İŞLEME - (7.Hafta) KENAR BELİRLEME ALGORİTMALARI

GÖRÜNTÜ İŞLEME - (7.Hafta) KENAR BELİRLEME ALGORİTMALARI GÖRÜNTÜ İŞLEME - (7.Hafta) KENAR BELİRLEME ALGORİTMALARI Bu konuda bir çok algoritma olmasına rağmen en yaygın kullanılan ve etkili olan Sobel algoritması burada anlatılacaktır. SOBEL FİLTRESİ Görüntüyü

Detaylı

Açık Kaynak Kodlu Optik Sınav Kağıtları Depolama Sistemi

Açık Kaynak Kodlu Optik Sınav Kağıtları Depolama Sistemi Açık Kaynak Kodlu Optik Sınav Kağıtları Depolama Sistemi Kerem Erzurumlu Aykut Karakaya kerem@linux.org.tr aykut.karakaya@bil.omu.edu.tr Ondokuz Mayıs Üniversitesi Bilgisayar Mühendisliği Bölümü Gereksinim

Detaylı

Görüntüden OpenCV ile Duygu Analizi

Görüntüden OpenCV ile Duygu Analizi Görüntüden OpenCV ile Duygu Analizi Mehmet Emin Tenekeci 1, Abdülkadir Gümüşçü 2, Emrah Aslan 1 1 Harran Üniversitesi, Bilgisayar Mühendisliği Bölümü, Şanlıurfa 2 Harran Üniversitesi, Elektrik-Elektronik

Detaylı

Qt ile Bir Ağ Uygulaması

Qt ile Bir Ağ Uygulaması Qt ile Bir Ağ Uygulaması Aykut Aksoy aykutaksoy@myway.com sürüm 1.0 Özet Bu belge Qt ile hazırlanmış bir ağ uygulamasını anlatır. C++ bilinmesi beklenir. Bu belgede "QProcess.h" kütüphanesine ağırlık verilmiştir.

Detaylı

C++ Dersi: Nesne Tabanlı Programlama

C++ Dersi: Nesne Tabanlı Programlama C++ Dersi: Nesne Tabanlı Programlama Bölüm 11: Bileşim, Arkadaş ve Diğer Araçlar İçerik Bileşim Arkadaş Fonksiyonlar ve Sınıflar Arkadaş Fonksiyonlar Arkadaş Sınıflar Sabit Nesneler Sabit Üye Fonksiyonlar

Detaylı

Teknikleri. Önsöz. iskender atasoy

Teknikleri. Önsöz. iskender atasoy Linux Altı nda Grafik Programlama Teknikleri Önsöz Linux atında yazılım geliştirmeyi düşünüyorsunuz veya geliştiriyorsunuz.artık programlarınızı görsel bileşenler ile süslemek istiyorsanız bu doküman sizlere

Detaylı

Bilgisayar ne elde eder (görüntüden)? Dijital Görüntü İşleme Fevzi Karslı, KTÜ. 08 Ekim 2013 Salı 51

Bilgisayar ne elde eder (görüntüden)? Dijital Görüntü İşleme Fevzi Karslı, KTÜ. 08 Ekim 2013 Salı 51 Bilgisayar ne elde eder (görüntüden)? 08 Ekim 2013 Salı 51 Zorluk 1: bakış açısı 2012, Selim Aksoy 08 Ekim 2013 Salı 52 Zorluk 2: aydınlatma 08 Ekim 2013 Salı 53 Zorluk 3: oklüzyon (ölü bölge oluşumu)

Detaylı

BBM Discrete Structures: Final Exam Date: , Time: 15:00-17:00

BBM Discrete Structures: Final Exam Date: , Time: 15:00-17:00 BBM 205 - Discrete Structures: Final Exam Date: 12.1.2017, Time: 15:00-17:00 Ad Soyad / Name: Ögrenci No /Student ID: Question: 1 2 3 4 5 6 7 8 9 10 11 Total Points: 6 16 8 8 10 9 6 8 14 5 10 100 Score:

Detaylı

int main(void) { int num = 0; int input = 1; int retval = 0; struct NODE *nodepointer; nodepointer = (struct NODE *)malloc(sizeof(struct NODE));

int main(void) { int num = 0; int input = 1; int retval = 0; struct NODE *nodepointer; nodepointer = (struct NODE *)malloc(sizeof(struct NODE)); #include #include struct NODE { int number; struct NODE *nextpointer; ; void append_node(struct NODE *nodepointer, int num); void display_list(struct NODE *nodepointer); int search_value(struct

Detaylı

İkili (Binary) Görüntü Analizi

İkili (Binary) Görüntü Analizi İkili (Binary) Görüntü Analizi İkili görüntü analizine giriş Eşikleme (Thresholding) Matematiksel morfoloji Piksel ve komşulukları (neighborhoods) Bağlantılı bileşenler analizi (Connected components analysis)

Detaylı

1 RUBY HAKINDA 1 Ruby nin Gelişim Hikayesi 1 Neden Ruby? 1 Neden Bu Kadar Popüler? 2

1 RUBY HAKINDA 1 Ruby nin Gelişim Hikayesi 1 Neden Ruby? 1 Neden Bu Kadar Popüler? 2 İÇİNDEKİLER VII İÇİNDEKİLER 1 RUBY HAKINDA 1 Ruby nin Gelişim Hikayesi 1 Neden Ruby? 1 Neden Bu Kadar Popüler? 2 2 RUBY KURULUMU 3 Windows İçin Ruby Kurulumu 3 Ubuntu ve Debian İçin Ruby Kurulumu 6 Mac

Detaylı

NESNEYE YÖNELİK PROGRAMLAMA C++ a Giriş

NESNEYE YÖNELİK PROGRAMLAMA C++ a Giriş Özlem AYDIN NESNEYE YÖNELİK PROGRAMLAMA C++ a Giriş Trakya Üniversitesi Bilgisayar Mühendisliği Bölümü C DİLİNİN BİR ÜST-KÜMESİ OLARAK C++ Genel olarak, C de mevcut olan her şey C++ da da vardır. C dilinde

Detaylı

KOCAELİ ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ. BİLGİSAYAR LABORATUVARI II FİNAL SINAVI SORU ve CEVAPLARI(I. ogr)

KOCAELİ ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ. BİLGİSAYAR LABORATUVARI II FİNAL SINAVI SORU ve CEVAPLARI(I. ogr) KOCAELİ ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BİLGİSAYAR LABORATUVARI II FİNAL SINAVI SORU ve CEVAPLARI(I. ogr) 1. Kendisine gönderilen iki karakter dizisini birleştirip geriye tek bir dizi döndüren ve

Detaylı

10/17/2007 Nesneye Yonelik Programlama 3.1

10/17/2007 Nesneye Yonelik Programlama 3.1 Procedure-Based Programming in C++ Çoğu gerçek dünya problemleri binlerce kod satırı gerektirir ( MS Windows NT 5.0 25 million dan fazla kod satırından oluşmaktadır). Yazılımın tasarımı, kodlanması ve

Detaylı

TEMPLATES. Binnur Kurt kurt@cs.itu.edu.tr. Bilgisayar Mühendisliği Bölümü İstanbul Teknik Üniversitesi. C++ ile Nesneye Dayalı Programlama 1

TEMPLATES. Binnur Kurt kurt@cs.itu.edu.tr. Bilgisayar Mühendisliği Bölümü İstanbul Teknik Üniversitesi. C++ ile Nesneye Dayalı Programlama 1 PARAMETRİKÇOKŞEKİLLİLİK: TEMPLATES Binnur Kurt kurt@cs.itu.edu.tr Bilgisayar Mühendisliği Bölümü İstanbul Teknik Üniversitesi C++ ile Nesneye Dayalı Programlama 1 Sınıf Yapısı Kalıtım Çok Şekillilik Templates

Detaylı

OpenCV ile Kamera Kalibrasyonu

OpenCV ile Kamera Kalibrasyonu OpenCV ile Kamera Kalibrasyonu Eser Sert 1, Deniz Taşkın 2, Cem Taşkın 3, Nurşen Topçubaşı 4, İrfan Köprücü 2 1 Trakya Üniversitesi, Teknik Bilimler Meslek Yüksek Okulu, Edirne 2 Trakya Üniversitesi, Bilgisayar

Detaylı

Programlama Dilleri. C Dili. Programlama Dilleri-ders08/ 1

Programlama Dilleri. C Dili. Programlama Dilleri-ders08/ 1 Programlama Dilleri C Dili Programlama Dilleri-ders08/ 1 Yapısal Veri Tipleri C dili genişletilebilen bir dildir. Var olan veri tipleri kullanılarak yeni veri tipleri tanımlanıp kullanılabilir. Programlama

Detaylı

C++ Dersi: Nesne Tabanlı Programlama

C++ Dersi: Nesne Tabanlı Programlama C++ Dersi: Nesne Tabanlı Programlama Bölüm 7: Yapılar Diziler İçerik Yapıların Tanımı Yapılara İlk Değer Atama Yapı Elemanlarına Erişim İç içe Yapılar Yapılar ve Fonksiyonlar 2 Yapılar (structures) içinde

Detaylı

QT Eğitimi - 4 : İkili Saat (Binary Clock)

QT Eğitimi - 4 : İkili Saat (Binary Clock) QT Eğitimi - 4 : İkili Saat (Binary Clock) Önder Arslan Sürüm 1.0 Özet Bu belge qt öğrenimi için bir dizi şeklinde hazırlanmıştır. C++ bilmek ön koşuldur. Giriş Kullanıcı arabirimi

Detaylı

Week 7. Düğüm bulma Tekli bağlı liste: phead ve ptail Dairesel bağlı liste Çift bağlı liste

Week 7. Düğüm bulma Tekli bağlı liste: phead ve ptail Dairesel bağlı liste Çift bağlı liste Week 7 Düğüm bulma Tekli bağlı liste: phead ve ptail Dairesel bağlı liste Çift bağlı liste Düğüm bulma While kullanarak Loop kullanarak Düğüm bulma: While döngüsü ile Node* temp; temp=phead; while (temp->!=xvalue)

Detaylı

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi Bil101 Bilgisayar Yazılımı I Bilgisayar Yüksek Mühendisi Editör Disk 1)Kaynak kodlar editör aracılığı ile oluşturulur. (.c) Kaynak dosya Önişleyici Disk 2)Önişleyici kodlar içerisindeki ilk işleme işini

Detaylı

NDEN BELİRLENEBİLME LME POTANSİYELİ UYDU GÖRÜNTÜLERİNDEN

NDEN BELİRLENEBİLME LME POTANSİYELİ UYDU GÖRÜNTÜLERİNDEN BİNALARIN YÜKSEK Y ÇÖZÜNÜRLÜKLÜRLÜKL UYDU GÖRÜNTÜLERİNDEN NTÜLER NDEN BELİRLENEBİLME LME POTANSİYELİ Dilek KOÇ SAN dkoc@metu metu.edu.tr Orta Doğu u Teknik Üniversitesi, Jeodezi ve Coğrafi Bilgi Teknolojileri

Detaylı

Adı Soyadı Öğrenci No. Toplam (100p) 2 (10p) +10p. 5 (25p) +10p. 3 (20p) 4 (25p) 1 (20p)

Adı Soyadı Öğrenci No. Toplam (100p) 2 (10p) +10p. 5 (25p) +10p. 3 (20p) 4 (25p) 1 (20p) Adı Soyadı Öğrenci No 1 (20p) 2 (10p) +10p 3 (20p) 4 (25p) 5 (25p) +10p Toplam (100p) Açıklamalar: Öğrenciler yanlarında hatırlatma amacıyla sadece bir yüzüne C fonksiyonlarının açıkladıkları, kullanımlarını

Detaylı

Araç Destek Sistemleri İçin Kuş Bakışı Görüntü Dönüşümü. Bird s Eye View Transformation For Vehicle Assistance Systems

Araç Destek Sistemleri İçin Kuş Bakışı Görüntü Dönüşümü. Bird s Eye View Transformation For Vehicle Assistance Systems Akademik Bilişim 2013 XV. Akademik Bilişim Konferansı Bildirileri 23-25 Ocak 2013 Akdeniz Üniversitesi, Antalya Araç Destek Sistemleri İçin Kuş Bakışı Görüntü Dönüşümü Turgut Doğan 1, Eser Sert 2, Deniz

Detaylı

Jval tipi. Genel veri yapılarını kullanacağımız zaman Jval den faydalanırız.önemli olanlar aşağıda mevcuttur:

Jval tipi. Genel veri yapılarını kullanacağımız zaman Jval den faydalanırız.önemli olanlar aşağıda mevcuttur: Jval tipi /blugreen/homes/plank/cs360/include/jval.h içerisinde bir Jval tipi tanımlanmıştır.büyük bir union yapısı aşağıdadır: typedef union { int i; long l; double d; void *v; char *s; char c; unsigned

Detaylı

Hafta 1 Sayısal Görüntü İşlemeye Giriş ve Temel Adımlar

Hafta 1 Sayısal Görüntü İşlemeye Giriş ve Temel Adımlar BLM429 Görüntü İşlemeye Giriş Hafta 1 Sayısal Görüntü İşlemeye Giriş ve Temel Adımlar Yrd. Doç. Dr. Caner ÖZCAN Fall in love with the process, and the results will come. ~ Eric Thomas Derse Giriş Ders

Detaylı

GÖRÜNTÜ İŞLEME HAFTA 4 DÖNÜŞÜMLER UZAYSAL FİLTRELEME

GÖRÜNTÜ İŞLEME HAFTA 4 DÖNÜŞÜMLER UZAYSAL FİLTRELEME GÖRÜNTÜ İŞLEME HAFTA 4 DÖNÜŞÜMLER UZAYSAL FİLTRELEME DERS İÇERİĞİ Histogram İşleme Filtreleme Temelleri HİSTOGRAM Histogram bir resimdeki renk değerlerinin sayısını gösteren grafiktir. Histogram dengeleme

Detaylı

Adı Soyadı : Öğrenci No :

Adı Soyadı : Öğrenci No : Adı Soyadı : Öğrenci No : Soru 1 2 3 4 Toplam Not F.Ü TEKNOLOJİ FAKÜLTESİ YAZILIM MÜHENDİSLİĞİ BÖL. YMT111 VİZE SINAVI 2013 2014 Güz (03 Aralık 2013) SORULAR Toplam 4 soru 110 Puan, cevaplarınızı soru

Detaylı

Sınav tarihi : Süre : 60 dak. a) strstr b) strchr c) strcat d) strcpy e) strlen. a) b) d) e) 0

Sınav tarihi : Süre : 60 dak. a) strstr b) strchr c) strcat d) strcpy e) strlen. a) b) d) e) 0 Selçuk Üniversitesi, Mühendislik Fakültesi, Harita Mühendisliği Bölümü Bitirme Sınavı Test Soruları Adı soyadı : Öğrenci no : Sınav tarihi : 01.06.2017 Süre : 60 dak. 1. t değişkeni hakkında aşağıdakilerden

Detaylı

şeklinde tanımlanmıştır. O halde, dosyaları daha önceki bilgilerimizi kullanarak FILE *Dosya1, *Dosya2;

şeklinde tanımlanmıştır. O halde, dosyaları daha önceki bilgilerimizi kullanarak FILE *Dosya1, *Dosya2; Dosya İşlemleri Nedir? Programlarınızı girdi (input) olarak aldığı verileri bir text dosyasında yada word dosyasında vb. saklamasıdır. Artık C programınızın yaratıp içine veriler koyacağı text dosyasını

Detaylı

İkili (Binary) Görüntü Analizi

İkili (Binary) Görüntü Analizi İkili (Binary) Görüntü Analizi İkili görüntü analizine giriş Eşikleme (Thresholding) Matematiksel morfoloji Piksel ve komşulukları (neighborhoods) Bağlantılı bileşenler analizi (Connected components analysis)

Detaylı

Bölüm 2 - C ile Programlamaya Giriş

Bölüm 2 - C ile Programlamaya Giriş 1 Bölüm 2 - C ile Programlamaya Giriş Başlıklar 2.1 Giriş 2.2 Basit C Programları: Bir Metni Yazdırmak 2.3 Basit C Programları: İki Tam Sayıyı Toplamak 2.4 Hafıza Konuları 2.5 C de Aritmetik 2.6 Karar

Detaylı

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-12 Fonksiyonlar. Yrd. Doç. Dr. Ümit ATİLA

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-12 Fonksiyonlar. Yrd. Doç. Dr. Ümit ATİLA BLM-111 PROGRAMLAMA DİLLERİ I Ders-12 Fonksiyonlar Yrd. Doç. Dr. Ümit ATİLA umitatila@karabuk.edu.tr http://web.karabuk.edu.tr/umitatilla/ Fonksiyonlar Fonksiyonlar C de modüller Programlar kullanıcı tanımlı

Detaylı

Önsöz. İçindekiler Algoritma Algoritma Nasıl Hazırlanır? Yazılımda Algoritma Mantığı Nedir? 1.2. Algoritma Örnekleri ve Sorular

Önsöz. İçindekiler Algoritma Algoritma Nasıl Hazırlanır? Yazılımda Algoritma Mantığı Nedir? 1.2. Algoritma Örnekleri ve Sorular Önsöz Giriş İçindekiler V VII IX 1.1. Algoritma 1.1.1. Algoritma Nasıl Hazırlanır? 1.1.2. Yazılımda Algoritma Mantığı Nedir? 1.2. Algoritma Örnekleri ve Sorular 2.1. Programın Akış Yönü 19 2.2. Başlama

Detaylı

İstanbul Teknik Üniversitesi IEEE Öğrenci Kolu DİZİLER

İstanbul Teknik Üniversitesi IEEE Öğrenci Kolu DİZİLER DİZİLER Dizi Nedir? Aynı türden nesnelerin oluşturduğu, bellekte bitişik bir biçimde bulunan veri yapısına dizi denir.mesela alfabe diye bir dizi tanımlarız, harfleri a,b,c,d... diye sıralarız.dizinin

Detaylı

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-8 Değişken Tipleri ve Temel Giriş/Çıkış İşlemleri

BLM-111 PROGRAMLAMA DİLLERİ I. Ders-8 Değişken Tipleri ve Temel Giriş/Çıkış İşlemleri BLM-111 PROGRAMLAMA DİLLERİ I Ders-8 Değişken Tipleri ve Temel Giriş/Çıkış İşlemleri Yrd. Doç. Dr. Ümit ATİLA umitatila@karabuk.edu.tr http://web.karabuk.edu.tr/umitatilla/ Temel Veri Tipleri C dilinde

Detaylı

#include <stdio.h> int main(void) { float sayi; float * p; p = &sayi; printf("deger girin:"); scanf("%f", p); printf("girilen deger:%f\n", *p);

#include <stdio.h> int main(void) { float sayi; float * p; p = &sayi; printf(deger girin:); scanf(%f, p); printf(girilen deger:%f\n, *p); Ege University Electrical and Electronics Engineering Introduction to Computer Programming Laboratory Lab 11 - Pointers 1) Pointer syntax. Declare a variable and a pointer with same data type. Assign variable

Detaylı

Digital Görüntü Temelleri Görüntü Oluşumu

Digital Görüntü Temelleri Görüntü Oluşumu Digital Görüntü Temelleri Görüntü Oluşumu Işık 3B yüzeye ulaşır. Yüzey yansıtır. Sensör elemanı ışık enerjisini alır. Yoğunluk (Intensity) önemlidir. Açılar önemlidir. Materyal (yüzey) önemlidir. 25 Ekim

Detaylı

Bilgisayarla Görme (EE 430) Ders Detayları

Bilgisayarla Görme (EE 430) Ders Detayları Bilgisayarla Görme (EE 430) Ders Detayları Ders Adı Ders Kodu Dönemi Ders Saati Uygulama Saati Laboratuar Saati Kredi AKTS Bilgisayarla Görme EE 430 Her İkisi 3 0 0 3 5 Ön Koşul Ders(ler)i EE 275, MATH

Detaylı

mod ile açılacak olan dosyanın ne amaçla açılacağı belirlenir. Bunlar:

mod ile açılacak olan dosyanın ne amaçla açılacağı belirlenir. Bunlar: Dosyalama Çoğu programda, bazı verilerin disk üzerinde saklanmasına gerek duyulur. C programlama dilinde, disk dosyasına erişme (okuma ve yazma için) iki farklı yöntemle yapılır. Bunlar üst düzey ve alt

Detaylı

BİLG Dr. Mustafa T. Babagil 1

BİLG Dr. Mustafa T. Babagil 1 BİLG214 20.10.2009 Dr. Mustafa T. Babagil 1 Yapısal bilgi türlerinin tanımlanması. (C++ daki struct yapısı. ) Daha önce öğrenmiş olduğumuz bilgi tipleri char, int ve float v.b. değişkenler ile dizi (array)

Detaylı

Digital Görüntü Temelleri Görüntü Oluşumu

Digital Görüntü Temelleri Görüntü Oluşumu Digital Görüntü Temelleri Görüntü Oluşumu Işık 3B yüzeye ulaşır. Yüzey yansıtır. Sensör elemanı ışık enerjisini alır. Yoğunluk (Intensity) önemlidir. Açılar önemlidir. Materyal (yüzey) önemlidir. 06 Kasım

Detaylı

Object-Oriented Programming Lab 4. - Sıcaklık değeri, Kelvin biriminde saklansın. Varsayılan sıcaklık değeri K olsun.

Object-Oriented Programming Lab 4. - Sıcaklık değeri, Kelvin biriminde saklansın. Varsayılan sıcaklık değeri K olsun. 04.08.2017 Object-Oriented Programming Lab 4 1. class sicaklik sicaklik class ı oluşturun. - Sıcaklık değeri, Kelvin biriminde saklansın. Varsayılan sıcaklık değeri 273.15 K olsun. - okucel, okufah ve

Detaylı

AHMET YESEVİ ÜNİVERSİTESİ BİLİŞİM SİSTEMLERİ VE MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ LİSANS DÖNEM ÖDEVİ

AHMET YESEVİ ÜNİVERSİTESİ BİLİŞİM SİSTEMLERİ VE MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ LİSANS DÖNEM ÖDEVİ AHMET YESEVİ ÜNİVERSİTESİ BİLİŞİM SİSTEMLERİ VE MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ LİSANS DÖNEM ÖDEVİ TBIL-303-01 Veri Yapıları ve Algoritmalar İki Yönlü Bağlantılı Liste Uygulaması HAZIRLAYAN

Detaylı

Week 6: Bağlı Liste (Linked List) BAĞLI LİSTE KAVRAMI TEKİL (SINGLE) BAĞLI LİSTE ÇİFT (DOUBLE) BAĞLI LİSTE DAİRESEL (CIRCULAR) BAĞLI LİSTE

Week 6: Bağlı Liste (Linked List) BAĞLI LİSTE KAVRAMI TEKİL (SINGLE) BAĞLI LİSTE ÇİFT (DOUBLE) BAĞLI LİSTE DAİRESEL (CIRCULAR) BAĞLI LİSTE Week 6: Bağlı Liste (Linked List) BAĞLI LİSTE KAVRAMI TEKİL (SINGLE) BAĞLI LİSTE ÇİFT (DOUBLE) BAĞLI LİSTE DAİRESEL (CIRCULAR) BAĞLI LİSTE BAĞLI LİSTE KAVRAMI Derleme zamanında boyutunun bilinmesine ihtiyaç

Detaylı

BLM 111 ALGORİTMA VE PROGRAMLAMA I

BLM 111 ALGORİTMA VE PROGRAMLAMA I 1 BLM 111 ALGORİTMA VE PROGRAMLAMA I ÇOK BOYUTLU DİZİLER, YAPILAR [MULTIDIMENSIONAL ARRAYS, STRUCTURES] ÇOK BOYUTLU DİZİLER Çok boyutlu diziler tanımlayabiliriz. İki boyutta, çok boyutlu diziler bellek

Detaylı

Mifare Kart Yazıcı/Okuyucu Modül (MFM-200)

Mifare Kart Yazıcı/Okuyucu Modül (MFM-200) 2012 Mifare Kart Yazıcı/Okuyucu Modül (MFM-200) İstanbul Yazılım ve Elektronik Teknolojileri 01.01.2012 MFM-200 Mifare Kart Yazıcı/Okuyucu Modül Genel Özellikler Ürün Kodu MFM-200 Protokol ISO14443A, ISO15693

Detaylı

Nesne İşaretçileri. Binnur Kurt Bilgisayar Mühendisliği Bölümü İstanbul Teknik Üniversitesi. Sınıf Yapısı. Kalıtım Çok Şekillilik

Nesne İşaretçileri. Binnur Kurt Bilgisayar Mühendisliği Bölümü İstanbul Teknik Üniversitesi. Sınıf Yapısı. Kalıtım Çok Şekillilik Binnur Kurt kurt@ce.itu.edu.tr Bilgisayar Mühendisliği Bölümü İstanbul Teknik Üniversitesi Sınıf Yapısı Kalıtım Çok Şekillilik Nesneye Dayalı Programlama 2 1 İşaretçiler, veri değil, verinin yerleşik bulunduğu

Detaylı

Bazı Gömülü Sistemlerde OpenCV ile Performans Analizi

Bazı Gömülü Sistemlerde OpenCV ile Performans Analizi OpenCV ile Performans Analizi S.Ü Bil.Müh. 2. Sınıf Öğrencisi Faruk GÜNER farukguner@outlook.com.tr S.Ü Bil.Müh. 2. Sınıf Öğrencisi Mesut PİŞKİN mesutpiskin@outlook.com S.Ü Öğr. Gör. Dr. Mustafa Nevzat

Detaylı

Veri Yapıları. Amaçlar: Temel Veri Yapılarını Tanımlamalı Veri Yapılarını Veri Modeli ve Türlerini Öğreneceksiniz. İçindekiler:

Veri Yapıları. Amaçlar: Temel Veri Yapılarını Tanımlamalı Veri Yapılarını Veri Modeli ve Türlerini Öğreneceksiniz. İçindekiler: Veri Yapıları Amaçlar: Temel Veri Yapılarını Tanımlamalı Veri Yapılarını Veri Modeli ve Türlerini Öğreneceksiniz İçindekiler: Giriş Temel Veri Yapıları Tanımlamalı Veri Yapıları Veri Modeli ve Türleri

Detaylı

Bilgisayar Programlama. 1.Hafta

Bilgisayar Programlama. 1.Hafta Bilgisayar Programlama 1.Hafta Ders Planı 1. Bilgisayar Programlamaya Giriş 2. C Derleyicileri 3. GCC Kullanımı 4. Veri Tipleri ve Operatörler 5. Kontrol Yapıları 6. Döngüler 7. Döngüler 2. Hafta 8. Fonksiyonlar

Detaylı

2 ALGORİTMA VE AKIŞ DİYAGRAMLARI

2 ALGORİTMA VE AKIŞ DİYAGRAMLARI İÇİNDEKİLER IX İÇİNDEKİLER 1 GİRİŞ 1 Kitabın Amacı 1 Algoritmanın Önemi 2 Bilgisayarın Doğuşu ve Kullanım Amaçları 3 Programlama Dili Nedir? 3 Entegre Geliştirme Ortamı (IDE) Nedir? 4 2 ALGORİTMA VE AKIŞ

Detaylı

#include<stdio.h> #include<conio.h> #define doktorsayisi 3. typedef struct dr{ int ay1, ay2, ay3, ay4; } doktor; float hesapla(doktor dktr){

#include<stdio.h> #include<conio.h> #define doktorsayisi 3. typedef struct dr{ int ay1, ay2, ay3, ay4; } doktor; float hesapla(doktor dktr){ /* Bir hastanedeki 30 doktorun dört ay boyunca baktığı hasta sayısı dr isimli bir topluluğun üyeleri olarak tanımlanıp, main( ) fonksiyonunda değerleri veriliyor. Dr topluluğunun her bir değerini "hesapla"

Detaylı

C++ Giriş Ders 1 MSGSU Fizik Bölümü Ferhat ÖZOK Kullanılacak kaynak: Published by Juan Soulié

C++ Giriş Ders 1 MSGSU Fizik Bölümü Ferhat ÖZOK Kullanılacak kaynak:  Published by Juan Soulié Kullanılacak kaynak: http://www.cplusplus.com/doc/tutorial/ Published by Juan Soulié C++ Nedir? Arttırılmış C demektir ve C dilinin geliştirilmiş halini yansıtır. C++ öğrenmeden önce herhangi bir programlama

Detaylı

Değişkenler tanımlanırken onlara ne tür veriler atanabileceği de belirtilir. Temel veri türleri oldukça azdır:

Değişkenler tanımlanırken onlara ne tür veriler atanabileceği de belirtilir. Temel veri türleri oldukça azdır: C VERİ TÜRLERİ BASİT VERİ TÜRLERİ Değişkenler, program içinde üzerinde işlem yapılan, veri saklanan ve durumlarına göre programın akışı sağlanan nesnelerdir. C de bir değişken kullanılmadan önce tanımlanmalıdır.

Detaylı

Demodülasyon Algoritmaları İçin En İyilenmiş Windows İşletim Sistemi Uygulamaları

Demodülasyon Algoritmaları İçin En İyilenmiş Windows İşletim Sistemi Uygulamaları Demodülasyon Algoritmaları İçin En İyilenmiş Windows İşletim Sistemi Uygulamaları Alparslan Fişne afisne@aselsan.com.tr 1/46 1 İçerik Giriş Demodülasyon Algoritmaları Optimizasyon JNI Kullanımı Sonuçlar

Detaylı

C++ Dersi: Nesne Tabanlı Programlama

C++ Dersi: Nesne Tabanlı Programlama C++ Dersi: Nesne Tabanlı Programlama Bölüm 6: Diziler İçerik Diziler Dizi Elemanlarına İlk Atama Diziler ve Fonksiyonlar İki Boyutlu Diziler İki Boyutlu Dizi Tanımı İki Boyutlu Dizi Elemanlarına Erişim

Detaylı

YEDİTEPE ÜNİVERSİTESİ MÜHENDİSLİK VE MİMARLIK FAKÜLTESİ

YEDİTEPE ÜNİVERSİTESİ MÜHENDİSLİK VE MİMARLIK FAKÜLTESİ MÜHENDİSLİK VE MİMARLIK FAKÜLTESİ STAJ DEFTERİ TRAINING DIARY Adı, Soyadı Name, Lastname : ÖĞRENCİ NİN STUDENT S No ID Bölümü Department : : Fotoğraf Photo Öğretim Yılı Academic Year : Academic Honesty

Detaylı

ÖZEL EGE LİSESİ EGE BÖLGESİ OKULLAR ARASI MATEMATİK YARIŞMASI 1.AŞAMA KONU KAPSAMI

ÖZEL EGE LİSESİ EGE BÖLGESİ OKULLAR ARASI MATEMATİK YARIŞMASI 1.AŞAMA KONU KAPSAMI ÖZEL EGE LİSESİ EGE BÖLGESİ OKULLAR ARASI MATEMATİK YARIŞMASI 1.AŞAMA KONU KAPSAMI 6. SINIF 5. SINIF TÜM KONULARI 1.ÜNİTE: Geometrik Şekiller 1) Verileri Düzenleme, Çokgenler ve Süsleme 2) Dörtgenler 3)

Detaylı

Büyük Veri ve Endüstri Mühendisliği

Büyük Veri ve Endüstri Mühendisliği Büyük Veri ve Endüstri Mühendisliği Mustafa Gökçe Baydoğan Endüstri Mühendisliği Bölümü Boğaziçi Üniversitesi İstanbul Yöneylem Araştırması/Endüstri Mühendisliği Doktora Öğrencileri Kolokyumu 21-22 Nisan

Detaylı

Adım Adım C-II. Eksik kalmış konular

Adım Adım C-II. Eksik kalmış konular Adım Adım C-II Eksik kalmış konular Bu dersin amacı Bu derste; değişkenler, sabitler ve operatörler ile fonksiyonlar konusunun detayları anlatılacaktır. Ders bitiminde; Daha etkin programlar yazma becerisinin

Detaylı

Bilgisayarla Fotogrametrik Görme

Bilgisayarla Fotogrametrik Görme Bilgisayarla Fotogrametrik Görme Dijital Görüntü ve Özellikleri Yrd. Doç. Dr. Mustafa DİHKAN 1 Dijital görüntü ve özellikleri Siyah-beyaz resimler için değer elemanları 0-255 arasındadır. 256 farklı durum

Detaylı

BÖLÜM 11: YAPISAL VERİ TİPLERİ

BÖLÜM 11: YAPISAL VERİ TİPLERİ BÖLÜM 11: YAPISAL VERİ TİPLERİ I. STRUCTURE-YAPI (struct) TİPİ DEĞİŞKENLER Birbiriyle bağlantılı ve bir küme teşkil eden değerler bir tek değişkenin çatısı altında bu değişkenin alt alanları olarak tanımlanabilirler.

Detaylı

Yrd. Doç. Dr. Caner ÖZCAN

Yrd. Doç. Dr. Caner ÖZCAN Yrd. Doç. Dr. Caner ÖZCAN malloc Malloc fonksiyonu bir değişken için hafızadan bir blok yer ayrılması için kullanılır. Eğer hafızada yeterli alan yoksa fonksiyon NULL döndürür. int *ptr; ptr = (int *)

Detaylı

Adı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : dak.

Adı soyadı :... Öğrenci no :... İmza :... Tarih, Süre : dak. Selçuk Üniversitesi Mühendislik Fakültesi Harita Mühendisliği Bölümü ra Sınavı Test Soruları dı soyadı :... Öğrenci no :... İmza :... Tarih, Süre :13.04.2017 60 dak. Dikkat!!! Soru kitapçığında ve cevap

Detaylı

Hafta 12 Karakter Tutan Diziler

Hafta 12 Karakter Tutan Diziler BLM111 Programlama Dilleri I Hafta 12 Karakter Tutan Diziler Yrd. Doç. Dr. Caner ÖZCAN Katar (String) Tanımlama Dizileri ve çok boyutlu dizileri gördük. Katar dediğimiz şey de aslında bir dizidir. Değişken

Detaylı

KONTROL VE OTOMASYON KULÜBÜ

KONTROL VE OTOMASYON KULÜBÜ KONTROL VE OTOMASYON KULÜBÜ C DİLİ İLE MİKROKONTROLÖR PROGRAMLAMA EĞİTİMİ Serhat Büyükçolak Ahmet Sakallı 2009-2010 Güz Dönemi Eğitimleri Mikrokontrolör Gömülü sistemlerin bir alt dalı olan mikrokontrolör

Detaylı

EĞİTİMDE BİLGİSAYAR PROGRAMLAMA

EĞİTİMDE BİLGİSAYAR PROGRAMLAMA EĞİTİMDE BİLGİSAYAR PROGRAMLAMA GEOMETRİK ŞEKİLLERİ YAKALAMA Geometrik şekilleri yakalama oyununda, kedi sylvester elinde geometrik şekillerin resmi olan pankart ile oyun alanı üzerinde rastgele pozisyonlarda

Detaylı

const objects & const member functions

const objects & const member functions const objects & const member functions Principle of Least Privilege: Bir yazılım parçasına sadece kesin olarak ihtiyac duyulan karadar erişim izni verilmelidir. Bu yolla bir çok muhtemel hata yakalanabilir

Detaylı

Çoktan Seçmeli Değerlendirme Soruları Akış Şemaları İle Algoritma Geliştirme Örnekleri Giriş 39 1.Gündelik Hayattan Algoritma Örnekleri 39 2.Say

Çoktan Seçmeli Değerlendirme Soruları Akış Şemaları İle Algoritma Geliştirme Örnekleri Giriş 39 1.Gündelik Hayattan Algoritma Örnekleri 39 2.Say İÇİNDEKİLER 1. Bilgisayarın Yapısı Ve Programlama Dilleri Giriş 1 Bilgisayar ve Programlamanın Kısa Bir Tarihçesi 2 Donanım ve Yazılım Kavramları 3 Bilgisayarın Donanımsal yapısı 4 Giriş Birimi (Input

Detaylı

Bigisayar Programlama

Bigisayar Programlama Bigisayar Programlama (GÜZ 2015) DERS-02: C de Programlamaya Giriş Yrd. Doç Dr. Yakup EMÜL Cumhuriyet Üniv., Teknoloji Fakültesi Yazılım Mühendisliği Bölümü yakupemul@cumhuriyet.edu.tr Ofis Saatleri :

Detaylı

YEDİTEPE ÜNİVERSİTESİ MÜHENDİSLİK VE MİMARLIK FAKÜLTESİ

YEDİTEPE ÜNİVERSİTESİ MÜHENDİSLİK VE MİMARLIK FAKÜLTESİ ÖĞRENCİ NİN STUDENT S YEDİTEPE ÜNİVERSİTESİ STAJ DEFTERİ TRAINING DIARY Adı, Soyadı Name, Lastname : No ID Bölümü Department : : Fotoğraf Photo Öğretim Yılı Academic Year : Academic Honesty Pledge I pledge

Detaylı

Çok Şekillilik (Polymorphism)

Çok Şekillilik (Polymorphism) Çok Şekillilik () Binnur Kurt kurt@ce.itu.edu.tr Bilgisayar Mühendisliği Bölümü İstanbul Teknik Üniversitesi Sınıf Yapısı Kalıtım Çok Şekillilik Nesneye dayalı programlamanın üç temel kavramı : 1. Sınıflar,

Detaylı

BLM 112- Programlama Dilleri II. Hafta 5 İşaretçiler (Pointers)

BLM 112- Programlama Dilleri II. Hafta 5 İşaretçiler (Pointers) 1 BLM 112- Programlama Dilleri II Hafta 5 İşaretçiler (Pointers) Dr. Öğr. Üyesi Caner Özcan Hiç hata yapmayan insan, hiçbir şey yapmayan insandır. Ve hayatta en büyük hata, kendini hatasız sanmaktır. ~Y.

Detaylı

Hafta 13 Fonksiyonlar

Hafta 13 Fonksiyonlar BLM111 Programlama Dilleri I Hafta 13 Fonksiyonlar Yrd. Doç. Dr. Caner ÖZCAN Fonksiyonlar Fonksiyonlar C de modüller Programlar kullanıcı tanımlı fonksiyonları ve kütüphane fonksiyonlarını birlikte kullanırlar.

Detaylı