Anasayfa » Arşiv

Bilgisayar Bilimleri Kategorisindeki Yazılar

C++, Görüntü İşleme - OpenCv »

[21 Eki 2012 | Yorum Yok | 5.898 kez okundu]
1 Star2 Stars3 Stars4 Stars5 Stars (1 oy,5 üzerinden : 5,00 )
Loading...
OpenCV Dersleri – 3 Resim Üzerine Şekil Çizme ve Yazı Yazma

Merhaba arkadaşlar, bu yazımızda resim üzerine şekillerin nasıl çizildiğini ve yazıların nasıl yazılabileceğini anlatacağım. Öncelikle kodumu paylaşıyorum.

?View Code CPP#include <stdio.h>
#include <opencv\cv.h>
#include <opencv\highgui.h>
#include <math.h>
int main(int argc, char** argv)
{
IplImage* src1 = cvLoadImage( "resim.jpg" );
 
/*
* Çizgi çizme
*/
//iki nokta belirlenir
CvPoint pt1 = cvPoint(10,10);
CvPoint pt2 = cvPoint(150,150);
 
//kullanılacak renk
CvScalar red = CV_RGB(250,0,0);
 
//kalınlık
int tickness = 2;
int connectivity = 8;
 
//çizgi çizilir
cvLine(src1,pt1,pt2,red,tickness,connectivity);
 
/*
* Çember Çizme
*/
// çap değeri
int radius = 30;
 
//renk
CvScalar blue = CV_RGB(0,0,250);
 
//çember çizilir
cvCircle(src1,pt2,radius,blue,tickness,connectivity);
 
/*
* Yazı yazma
*/
// Yazımız
const char * text = "deneme texti";
 
//ölçekler
double hscale = 1.0;
double vscale = 0.8;
 
//keskinlik
double shear = 0.2;
int tickness2 = 1;
int line_type = 8;
CvScalar yellow …

Devamını oku...

C++, Görüntü İşleme - OpenCv »

[20 Eki 2012 | Yorum Yok | 5.231 kez okundu]
1 Star2 Stars3 Stars4 Stars5 Stars (1 oy,5 üzerinden : 5,00 )
Loading...
OpenCV Dersleri – 2  Resim Üzerinde Basit İşlemler

Merhaba arkadaşlar,  bu dersimizde resim üzerinde yapılabilecek basit işlemler üzerinde duracağız. Önceki yazılarımızı okumayan arkadaşlarımızın, akıcı bir ders olması için öncelikle ilk dersleri okumalarını öneriyorum.
İlk olarak bir resim üzerinde Gaussian blur dönüşümü yapacağız. Kodumuz şu şekilde olacak,

?View Code CPP#include <stdio.h>
#include <opencv\cv.h>
#include <opencv\highgui.h>
#include <math.h>
int main(int argc, char** argv)
{
//Resmi yüklüyoruz
IplImage* img = cvLoadImage( "resim.jpg" );
 
//İki tane pencere yaratıyoruz
cvNamedWindow( "Tutorial orijinal" );
cvNamedWindow( "Tutorial blured" );
 
//Resmin orjinalini gösteriyoruz
cvShowImage("Tutorial orijinal", img);
 
// Bulanıklaşmış resmi koyacağımız değişkeni hazırlıyoruz.
// img değişkenindeki resmin boyutlarında, 8 bitlik 3 kanala sahip yeni bir değişken hazırlandı
IplImage* out = cvCreateImage( cvGetSize(img), IPL_DEPTH_8U, 3 );
 
// …

Devamını oku...

C++, Görüntü İşleme - OpenCv »

[19 Eki 2012 | Bir Yorum | 8.207 kez okundu]
1 Star2 Stars3 Stars4 Stars5 Stars (3 oy,5 üzerinden : 3,67 )
Loading...
OpenCV Dersleri – 1  Resim ve Video Yükleme

Merhaba arkadaşlar, opencv kütüphanemizi bilgisayarımıza kurduktan ve visual studio ile entegre ettikten sonra şimdi ilk uygulamamıza başlayalım. İlk dersimizde elimizde var olan resim ve video yu opencv ile ekranda göstereceğiz.
Projenizin hatasız çalışması için gerekli kütüphaneleri eklememiz gerekiyor. Kurulum dersini okumayan arkadaşlar buradan okuyarak visual studio içerisinde nasıl bir ayar yapmamız gerektiğini görebilirler.
Bu uygulamayı tabi ki  c++ projesi olarak yazacağız. Giriş niteliğinde olan bu proje için boş bir c++ projesi oluşturuyoruz. Eklememiz gereken ana kütüphaneler şunlar.

?View Code CPP#include <opencv\cv.h>
#include <opencv\highgui.h>

İlk uygulamamızın kodunu verelim ve üzerinde konuşalım

?View Code CPP#include <stdio.h>
#include <opencv\cv.h>
#include <opencv\highgui.h>
#include …

Devamını oku...

C++, Görüntü İşleme - OpenCv »

[29 Ağu 2012 | 12 Yorum | 13.162 kez okundu]
1 Star2 Stars3 Stars4 Stars5 Stars (2 oy,5 üzerinden : 5,00 )
Loading...
Windows Üzerine Opencv Kurulumu ve Visual Studio 2010 ile Entegrasyonu

Merhaba arkadaşlar bu yazımda, kurulumunda büyük zorluklar çektiğim opencv (görüntü işleme kütüphanesi) kütüphanesinin kurulumundan ve visual studio 2010 ile entegrasyonundan bahsedeceğim.
Opencv nedir gibi sorulara girmeyeceğim, internette yeterince döküman mevcut. Biz direk olarak kuruluma geçelim.

Opencv kütüphanesini buradan indiriyoruz. Bu yazı yazıldığında en son sürüm OpenCV-2.4.2 idi. İndirdiğimiz dosya .exe uzantılı sıkıştırılmış bir dosyadır.
İndirdiğimiz exe dosyasını çalıştırarak dosyaları c:// altında bir konuma açıyoruz. Ben şu şekilde açtım( C:\opencv ). Açtığımızda karşımıza şöyle klasörler gelecek.

Açtığımız bu klasörde kullanacağımız dosya yolları şöyle. Bu listeyi şimdi vereyim ilerki adımlarda kullanacağız. Siz klasörleri açtığınız konuma göre tekrar bu …

Devamını oku...

Algoritmalar, Java ve Java Teknolojileri »

[13 May 2012 | Yorum Yok | 3.972 kez okundu]
1 Star2 Stars3 Stars4 Stars5 Stars (Henüz hiç oy kullanılmadı. İlk oyu siz verin.)
Loading...
Regular Expression to DFA Converter (Düzenli İfadeden Dfa ya Çeviri Yapan Java Otomata)

Herkese merhabalar, bugün ki projemizde daha önceden geliştirdiğimiz e’nfa dan dfa ya çeviri yapan java otomatayı daha da geliştireceğiz ve verilen bir regular expression (düzenli ifade) ı dfa ya çeviren bir otomata geliştireceğiz.  Programımız yine aynı şekilde çalışmaktadır. Mevcut class larımızın üzerine yeni class lar ekleyerek programı geliştiriyoruz. Eklenen classlar şu şekilde

Converter (Çeviri işlemini yapan sınıfımız. İçerisinde ayrıca verilen regular expressionı tokenlara ayıran lexer bulunmaktadır.)
Relation
StateNfa

Ekran görüntümüz diğer projeyle çok benzerdir.

Regular expression bölümüne ifademizi yazıyoruz. İfademizde geçen harfleri ise  Language bölümüne yazıyoruz. Ardından Convert to Dfa and Draw butonuna basarak sonucu …

Devamını oku...

Algoritmalar, Java ve Java Teknolojileri »

[27 Nis 2012 | 5 Yorum | 5.679 kez okundu]
1 Star2 Stars3 Stars4 Stars5 Stars (1 oy,5 üzerinden : 5,00 )
Loading...
E ‘ NFA to DFA Converter (E ‘ Nfa dan Dfa ya Çeviri Yapan Java Otomata)

“Automata theory” dersini alan arkadaşların yakından bildikleri e’nfa (epsilon nondeterministic finite automata) dan dfa (deterministic finite automata) ya çevirme problemi vardır. Bu yazımda, bu problem için hazırlanmış nfa’yı dfa’ya çeviren bir  java projesini paylaşacağım.
Javada yazılmış bu program, elinizde mevcut olan bir epsilon nfa yı programa girerek dfa ye çevirmenizi ve dfa yı görsel olarak ekrana çizmenizi sağlamaktadır.
Programdan ekran görüntüleriyle örnek bir çeviri işlemi yapalım.
Bize verilen e’nfa şu şekilde olsun.

Bu örneği programa şu şekilde gireceğiz. Number of State bölümüne 0-10 tane state olduğu için 11 giriyoruz. Language bölümüne yukarıda ki örnekte …

Devamını oku...

Algoritmalar, Veri Yapıları »

[30 Ara 2011 | 2 Yorum | 19.208 kez okundu]
1 Star2 Stars3 Stars4 Stars5 Stars (2 oy,5 üzerinden : 4,00 )
Loading...
Breadth First Search ve Depth First Search Algoritmaları

Breadth first search ve depth first search algoritmaları graph larda gezinme ve arama algoritmalarıdır.
Bu graphlarda ilişkiler iki şekilde tutulabilir. İki boyutlu array ve linked listler ile
Breadth First Search  (Sığ Öncelikli Arama)
BFS (breadth first search) algoritmasının çalışma mantığı şu şekildedir. Verilen bir node dan başlayarak ilgili node un tüm komşuları gezilir. Daha sonra gezilen komşuların komşuları gezilerek verilen graph gezilmiş olur.
Algoritma

Fonksiyona gönderilen node kuyruğa atılır.
Kuyruk boşalıncaya kadar döngü sürdürülür.
Sıradaki node kuyruktan çıkarılır.
Çıkarılan node daha önce gezilmemiş ise, gezildi işareti konur ve gezilmemiş komşuları kuyruğa konur.

Pseudo kodunu şöyle yazabiliriz.

?View Code Cpublic void …

Devamını oku...