Matematik ve programlama gerçek hayatta ne işe yarar:emeksensin.com ve rengarenk

0
FZ
Emeksensin.com'da en son yaptığımız yeniliğin adı Rengarenk. Rengarenk özelliği ile eserleri renklerine göre arayabiliyorsunuz. Buradan deneyip görebilirisiniz: http://www.emeksensin.com/rengarenk. Renk arama özelliği dünyada az sitede görebildiğimiz bir özellik çünkü bunu yapabilmek için bazı zor problemleri çözmek gerekiyor. İlk problem eserin resmindeki binlerce renkten önemlilerini seçmek. Bunu yapan birçok görüntü işleme algoritması var. Biz OpenCV kütüphanesini kullanarak bir gerçekleme yaptık.
İkinci problem renkleri insanın algısına göre gruplamak. Henüz bu konuda uzmanlar tek bir fikirde anlaşmış değiller fakat temelde netleşen bazı kurallar var. Uygulamada renklerin RGB değerlerini bu kurallar ışığında kodlayıp insan algısını yansıtan bir renk uzayına haritalamak gerekiyor.

İlk iki problem çözüldükten sonra, önümüzde bir uygulama problemi var: Üç boyutlu renk uzayında bir bölgeyi arıyoruz. Her boyutu ayrı kaydedip sorguda üç değişkenin sınırlarını veriyorsanız ve üstelik renkleri ilişkisel veri tabanına kaydettiyseniz üzgünüm bu uçak düşer. Neyse ki aynı problem iki boyutlu uzayda coğrafi veritabanlarında daha önce çözülmüş. Hilbert kodlamasını ve özel amaçlı veri tabanımızı (YBDBdoo) kullanarak sorgularımızı kabul edilebilir hızlarda yapıyoruz. Hilbert dönüşümü için kullandığımız uzaygezen projesini çok başarılı bulduk.

Gerisini zaten biliyorsunuz: Basit bir renk paleti, ajax ve emeksensin'in alıştığımız hızlı ve sade kullanıcı arayüzü.

Görüşler

0
Dite
Ve nitekim "pek bi zor" problemleri çözmeyi başaramamışsınız. Bkz: Kötü seçim örneği.
0
Tarık
matematik ve programlama gerçek hayatın %98. geriye kalan yemek ve sex.

güzel proje, derin fikirler.
0
mdakin
Hilbert egrilerinin kullanilmasi guzel ve ilginc. Uzaygezen'i kullanan ilk acik kodlu proje bu sanirim.

Ilk aklima gelen soru, renk uzayini biraz kucuk tutarak daha basit ve bellekte calisan bir sey de cozum olmaz miydi? Sonucta sadece 3 boyut var. Cok safca bir yaklasimla, her renk bileseni -varsayalim r,g,b- icin 4-5 bit ayirsaniz ve bu 12 veya 15 bitlik degerleri bir dizinin indeksi olarak kullanip dizinin gozlerine de o rengi tasiyan resimlerin ID'lerini yerlestirseniz. Daha sonra arama yaparken aranan renge ait goze (belli bir hata toleransi kullaniliyorsa bazi araliklara) bakmak yeterli olacaktir. Tabi burada resim x renk kombinasyonlarinin rahatca bellege sigacagi varsayimini yapiyorum. Eger bellege sigmasza berkeleydb, Tokyo file cabinet tarzi basit bir key-value veritabani da kullanilabilir.. Bu cok basit ve kaba bir hack ama calisir gibi gorunuyor.

Elbette ki Hilbert egrileri veya diger benzerlik arama mekanizmalari daha genel amacli cozumler sunacaktir. Ozellikle ilerde resimlerle ilgili daha farkli ozellikleri de hesaba katinca, yani boyut sayisi ve uzayin buyuklugu arttigi zaman.
0
mdakin
Kucuk duzeltme:
- Proje acik kodlu degilmis
- Arayuzdeki renk secenegi az oldugu icin her halukarda bir kup icerisinde kup arama seklinde oluyor, yine de uzay kucukse, benzeri bir hack ise yarayacaktir. Bu tur durumlarda brute force yaklasimlari gecmek zor olabiliyor.
Görüş belirtmek için giriş yapın...

İlgili Yazılar

Lego MindStorms Uzaktan Kumanda Projesi

FZ

Lego MindStorms setlerinin en büyük dezavantajlarından biri, RCX'de bulunan hafızanın (32 KB) ileri düzey projeler geliştirmek için yetersiz olmasıdır. Bu sorunu önlemenin yolu ise RCX'de çalışması planlanan algoritmaların bilgisayarda çalıştırılıp, algoritmanın çıktısı olan motor, sensör hareketlerinin RCX`e gönderilmesidir.

Lego MindStorms Setlerinin bu amaç için kızıl ötesi donanımı ve LeJOS'un Lego Kulesi ile RCX arasında haberleşmeyi sağlayan APIleri mevcuttur fakat haberleşme için kızıl ötesinin kullanılıyor olması kısıtlayıcıdır çünkü kızıl ötesi haberleşmesi 1-2 metre mesafe ile sınırlı kalmakla beraber kızıl ötesi alıcı/verici ledlerinin birbirlerini görme zorunluluğu olmaktadır.

DOS: Henüz Ölmedi!

FZ

DOS. Yani MS-DOS. Bugünkü gençlerin büyük bir kısmının dahi bilmediği kadar düşük işlemcili bilgisayarlarda çalışabilen, pek çok öncü yazılımın geliştirilmesine yol açmış, bazılarımızın kolayca küçümseyip aşağılayabileceği bir işletim sistemi. Çoktan öldü, cenazesini kaldırdık diye düşünedurun bazıları pek de öyle düşünmüyor.

Bu makale DOS´a yazılmış bir güzelleme şeklinde ;-) FreeDOS gibi açıkkodlu açık kodlu bir alternatifi bulunan bu ilkel ortamda (!) artık Python ile program yazmanız, MP3 dinlemeniz ve tabii en önemlisi tüm zamanların en güzel oyunlarını oynamanız mümkün ;-) Meraklısı DOSbox ve Interesting DOS Programs sitelerine bir göz atabilir.

DeepBlue, IBM ve GO

redial

... “Ne istiyorsanız kullanın. 250 paralel işlemci yetmezse 500 tanesini kullanın, o da yetmediyse bin tane. Eğer o da yetmiyorsa benim `laptop´ıma ve oğlumun `PlayStation´ına el koyabilirsiniz. İşe yarayacak her insanı işe alın, eğer tanrı Zeus size fikir verecekse Yunanların ne dediğini umursamadan ben gidip onu Olimpos’tan sizin için getiririm ama bir büyük GO ustasını yenin yoksa...”

Tamamı için...

Editörün Notu: Mükemmel bir yazı, yazarın eline ve ruhuna sağlık.

Göz hareketleri ile yazı yazmak

anonim

Ingilterede geliştirilen bir GPL projeden bahsetmek istiyorum, Dasher yazılımı göz hareketlerinizi takip ederek yazı yazmanıza olanak veriyor, demo'larını izledim gerçekten çok güzel, eylül ayı içinde 3.0 versiyonu çıkacak olan yazılımın, 1.6.8 versiyonunu ücretsiz olarak internet sitelerinden download edebilirsiniz. Adres:www.inference.phy.cam.ac.uk

GPU: Küresel İşleme Birimi

Tarık

GPU ingilizce adıyla Global Processing Unit, geniş konu yelpazesindeki bilgisayar uygulamaları ve araştırma çalışmalarını desteklemek amacıyla geliştirilen işlemci gücü paylaştırma çatısıdır.