kişisel internet günlüğü
Bunca işin gücün içinde
Bir şey var ki
Unutturuyor bana herşeyi,
O da şu baharın kokusu.
Cıvıl cıvıl kuşlar, masmavi deniz.
Mis kokulu çiçekler,
Sizi görüp de, kalkıp şurdan gelememek yanınıza
Aç kalmak kokunuza
Koyuyor insana, koyuyor.
N’apalım, hayat!
Herşey istediğimiz gibi olmuyor.
Gördüğüm iyi öğretmenler, sınıfına sade düşündürebilen, “bu muymuş yani?” dedirten insanlardı hep. Bazılarını daha yakından tanıyınca kendilerinin de sade ve net düşündüğünü farkettim. Tuğlaları birer birer koyarak koca binalar inşa ediyorlar.
Tanıdığım iyi öğretmenlerin, kitaplardan öğrendiğim dehaların ve zeki arkadaşlarımın (öss derecesi ile sınıflandırmıyorum!) karmaşıklığa girmeden sorunları çözdüğünü ve yollarında ilerlediklerini gözlemliyorum. Sade ve bilimsel bir metoddan kastım şöyle:
Önkoşul 1: Net bir problem tanımı
Problem tanımı belli olacak. Öyle zırt pırt da değişmeyecek.
Önkoşul 2: Veri toplama
Bilimsel metodda önce hipotez vardır. Ama ona geçmeden önce probleme dair verilerin elimizde olması lazım. Örneğin, deri sezimi yapacaksak elimizde ten renkleri bilgileri ve onların doğrulukları olmalı. Ya da plaka tanıyacaksak elimizde plaka resimleri olmalı. Bu adımdan bahsetmek çok saçma, çünkü herşey açık ama bu şekilde ilerlemeyen çok çalışma gördüm. Böyle kimseler doğrudan hipotez ile başlıyor, bahsedeceğim gözlem maddesini de zırvalıyor ve gerçeklikten uzak tartışıp duruyorsunuz; bir yere de varamıyorsunuz.
Veri toplama bazen çok bunaltıcı olabiliyor. Bir ay boyunca yüz verisi toplayan arkadaşlarım var! Ben de bir buçuk yıldır kaşların, gözlerin, vb. çeperlerinde nokta tıklıyorum! Tezimin yarısı nokta tıklamakla geçiyor. Sulu/susuz şakalar yaparak, kahve-cigara molalarında tartışarak, meyve destekli yardımlarda bulunarak, gece laboratuvarda perişan olmasın diye evine bırakarak, bazen de beraber hayata küfrederek birbirimize moral olmaya çalışıyoruz. Yaşamaya devam ediyoruz…
Buradan sonra hipotez, gözlemler ve sonra teorem vardır ama konumuz bunun sadelik içinde olması, o yüzden adımlar biraz daha ayrıntılı bence.
Başlangıç
Çözüm için ilk adım akla gelen ilk yaklaşımları uygulamak! Böyle bir başlangıç çok önemli çünkü nedense basitliği (simplicity) küçük görürüz. Denemeye gerek duymayız. Etrafımızdaki ne dediğini anlamadığımız, karmaşık cümleler kuran, bilmediğimiz terimler kullanan, lafları geveleyip konuşan insanları bir şey sanarız. Basit yaklaşımlara da “Bu ne ya, ben de yapardım!” der, kenara atarız.
Bu adımda insan problemi de daha derinden kavrayabiliyor, bu da ilerisi için çok büyük bir artı.
Gözlem
Denenen yaklaşımların sonuçlarına bakmak lazım. Bu da oturup kodunu yazmak, verilere uygulamak ve sonuçları beklemek olabiliyor. Eğer benim gibi videolar ile uğraşıyorsanız bu kısımda işiniz zor. Örneğin elinizde 200 video var ve her video 3 saniye. Pek fazla değil gibi, değil mi? Bulanık olmasın diye her saniye 30 kare demek ve her kare 640×480 ebatlarında. Elinizde 18000 tane 640×480′lik resim var gibi birşey. Bir kaç gün beklemek gerekebiliyor. Küçük bir hata olmuş kodda ve sil baştan…
Başlangıç ve gözlem aşamaları muhtemelen bir döngü içinde bir kaç sefer tekrarlanacak …
Sonuç
Ve son olarak, eğer sadelik yeterli olmazsa daha karmaşık bir modele geçilmeli. En başarılı/verimli irdelemesiyle de bitmeli.
Odaklanmak, düşünmek, üşenmemek, denemek.
Eğer bir de “bilgisayarla görme” gibi çoğu verimli/başarılı yaklaşımın çok basit çözümler olduğu bir alanda çalıştığımızı düşünürsek, üstteki dört fiil daha da anlam kazanıyor.
Öğrenme dünyasının özlü sözüyle bitirelim: Herşeyin en güzeli en sadesi!
Bloglarına “okuduğum veya tavsiye ettiğim kitaplar” benzeri eklentiler yapmaya çalışanlar görmüştüm. Aslında benim de aklıma gelmişti ama kendi işime yaramaz ki bu uygulama! Yani, başkalarının okuduklarıyla paylaşım içinde olursa, yeni kitaplar görür ve beğenirsem okurum. Anca o zaman işe yaramış olur. Neyse, biraz önce KütüphaneŞeysi ile karşılaştım; çok yararlanacağa benziyorum.
Bir kısmı dilimize de çevrilmiş. Kabaca kitap listelemeye, diğer kullanıcıların favori kitaplarını görmeye, kitaplar hakkında puan, yorum, satın alınacak yer, vb. bilgilere ulaşmaya yarıyor. Dünyanın en büyük kitap kulübü sloganıyla hizmet sunuyor.
Henüz içi boş da olsa işte benim kitap listem…
İnternette düzgün içeriğe sahip, çok ciddi boyutlarda siteler mevcut artık. En başta geleni de Wikipedia. Benzer şekilde bir çok viki, forum, blog ve başka bilgi kaynakları da var. Çoğumuz internette googladığımız zaman (googlamak: googling) wikipedia yazısı görünce ona güvenir, ona tıklarız. Wikimedia Commons‘ın başka uygulamaları da mevcut: Wikibooks, Wikispecies, Wikinews, Wikiquote gibi. Çoğu makalede kaynak gösteriliyor, kullanılan dile dikkat ediliyor ve çok kişinin değerlendirdiği içerik daha nesnel ve bilgi dolu oluyor. Bir de bunların Türkçe olanları var. Örneğin Vikisöz. Benim konum da bu aslında, Türkçe internet kullanıcıları olarak aynaya bakmak!
Şu sayfaya bakarsak, söylediği sözleri alıntıladığımız büyüklerimizi göreceğiz! Kimlermiş bizim kayda değer laf etmiş insanlarımız? Ahmet Çakar, Ahu Tuğba, Ali Poyrazoğlu, Asena, Atilla Koç, Bülent Ersoy, Emin Çölaşan, Emrah, Erman Toroğlu, Erol Büyükburç, Fatih Terim, Mustafa Topaloğlu, Hülya Avşar, Reha Muhtar, Orhan Baltacı (Doğuş), Yaşar, vs…
Aynı internet uygulamasının İngilizce halindeki diğer milletlerin sayfalarında büyük bilimciler, yazarlar, şairler, sanatçılar, liderler, vb. var. Herkesin kaynak olarak gördüğü ve güvenle başvurduğu Wikiquote’un dilimizdeki hali Vikisöz neden böyle? Daha da genel haliyle: Neden Türkçe içerikler diğerleri seviyesinde olamıyor? Yanıtı daha karmaşıktır belki ama şöyle bir neden ağır basıyor: Çünkü biz hâlâ bilişim rüzgarının etkisinde okyanusun ortasında savrulup duruyoruz. İnterneti daha doğru ve tüm insanlık için yararlı (Ne diyorum ben? Ne insanlığı, ne yararı?) olacak şekilde kullanmayı beceremiyoruz. Bunun kendimize de yararlı olacağını bilemiyoruz. Medyanın aşıladığı magazin kültürünün parçası olmaktan kurtulamıyor ve başkalarınca belirlenen kişilerin eleştirisini yapıyoruz. Sevdiğimiz ve asıl büyük insanlarımıza değer vermiyoruz. Onlar hakkında iki satır yazı yazmayı çok görüyoruz. Yanlış bilgileri düzeltmeyi enayilik olarak tanımlıyoruz. Sanki kendi hayatımızda çok önemli işler yapıyoruz da…
Farkında değil miyiz hâlâ? Devir artık tek kişilik devlerin değil, koca insanlığın eseri olarak gelişim gösteriyor. Takdir ettiğimiz çoğu uygulama ve araştırma da samimi bir şekilde emek sarfeden üyelerin bir ürünü. Üniversitelerde yapılan aratırmalar çoğunlukla büyük araştırma gruplarının ortaklaşa uğraşıları. Örneğin Pardus‘u kimse kullanmasa, hata bildirimi yapmasa, katkıda bulunmasa ne yazarlarında heves kalır, ne de bu kadar gelişir.
Dil, insanın dünya ile kurduğu ilişkide köprü; o yüzden de o dilde ulaşılan bilgilerin niteliği çok önemli. Neden bizim dilimizde de böyle çalışmalar yaygınlaşmasın? İnanıyorum ki; doğru ve samimi bilgiyi değerli görecek ve ona katkı sağlayacak arkadaşlar mutlaka vardır, var olacaktır. İnternetle tanışan küçükler için de bu siteler ve uygulamalar çok önemli olacaktır.
İnternet gün geçtikçe daha yaygın kullanılacak, hayatımızın en temel parçalarından biri olacak. Onu şekillendirmek, düzeltmek, düzgün içeriğe ulaşmak isteyenlerin sığınacağı kaynaklar oluşturmak mümkün. Bir elin nesi, iki elin sesi var! Bilginin kıymetini bilir ve ona katkıda bulunursak kirlenmemiş bir Türkçe internet ile yaşarız! Bunun bilincinde olalım, hepimiz kazanalım…
Tasarım, Kodlama: İsmail | Boğaz Foto.: Z. Melek | Yıl: 2008
Bilgi: Asp, Html | Siteye git
Hakkında: MSM-II internet sitesi.
Celestia ile uzayın derinliklerine doğru bir yolculuğa hazır mısınız? Hem de bedava! Dünya, gezegenler, uydular, Güneş sistemi, yıldız takımları, samanyolu… Gerçek zamanlı izleyebiliyorsunuz ama hızlandırmak da mümkün. Biraz zaman ayırıp denemenizi tavsiye ederim. Programı kurup açtığınızda sizin için bir anlam ifade etmezse “Help - Run Demo” menüsünden tanıtımına bakabilirsiniz.
Tycho Brahe bu bilginin küçücük bir kısmı için çıplak gözle gözlediği göğe ömrünü vermiş, onun sırrını çözmek asistanı Kepler‘e nasip olmuş, Newton gelip hepsini toparlamış ama o da geceleri gökyüzünü izlemekten kaç kez hastalanmış. Yıldızlar bizim parmaklarımızın ucunda ama aklımız göklerde!
Ekleme (5 Ekim ‘08): Bu adresten Celestia kullanımı ile ilgili Türkçe bilgiye ulaşabilirsiniz.
Görüntü işleme yazılarının video okuma ile başlayan temel yazısı gelsin…
MATLAB içinde video okumak için fonksiyonlar var fakat eğer işleyeceğiniz dosya biraz büyükse (örneğin 10 dk. kadar), bu fonksiyonlarla okumak pek iyi olmuyor. Çünkü MATLAB tüm kareleri belleğe almaya mı çalışıyor ne? Program şişiyor! Çözümü şöyle:
MATLAB ile çalışırken, otomatik olarak .asv dosyalarının oluştuğunu görürsünüz. Bunları temizleme işini elle yapmak yerine bir kod yazalım. Koddaki folder değişkeni değiştirilerek istenilen dizin ve onun alt-dizinlerindeki .asv uzantılı dosyalar silinsin.
% Önce ortamı temizleyelim clear, clc rehash path % Dosya konumlarını yenileyelim folder = '.'; % Bulunduğumuz dizinden itibaren olsun % Alt dizinleri bul folders = genpath([pwd filesep folder]); folders = regexp(folders, ';', 'split'); % Bulunan dizinlerdeki .asv dosyalarını bul asvFiles = cell(0); for iFolder = 1:numel(folders) files = dir(fullfile(folders{iFolder},'*.asv')); nFiles = numel(files); for iFile = 1:nFiles asvFiles{end+1} = [folders{iFolder} ... filesep files(iFile).name]; end end % .asv dosyalarını diskten sil for iAsvFile = 1:numel(asvFiles) delete(asvFiles{iAsvFile}); end
Uzunca bir aradan sonra yeni bir görüntü işleme yazısı ile merhaba!
Joaquim Luis tarafından yazılan ve benim de eklemeler yaparak geliştirdiğim bir kodu paylaşacağım. Önceki bir yazıda MPT araçkutusunu kullanarak bir resimdeki yüzleri ve gözleri bulmuştuk. Şimdi sadece yüzleri bulacağız ama bu sefer öyle saniyelerce beklemeden, bir saniyeden çok daha kısa bir sürede! Bunu da OpenCV’nin yüz bulma fonksiyonunu MATLAB’ten çağırarak başaracağız. Bunun dışında OpenCV’ye ait olan cvAbsDiff, cvAdd, cvAddS, cvAddWeighted, cvCanny, cvCircle, cvCvtColor, cvFindContours, cvCvtScale, cvDilate, cvDiv, cvApproxPoly, cvEllipseBox, cvErode, cvExp, cvFilter2D, cvFillPoly, cvFlip, cvFloodFill, cvGoodFeaturesToTrack, cvHoughLines2, cvHoughCircles, hypot, cvInpaint, cvLaplace, cvLine, cvLog, cvMatchTemplate, cvMorphologyEx, cvMul, cvPolyLine, cvPow, cvPyrDown, cvPyrUp, cvRectangle, cvResize, cvSmooth, cvSobel, cvSub, cvSubS ve cvPutText fonkiyonlarını da kullanabileceğiz. Bunların hepsini denemedim, garantisi yok. Neyse konuyu pek dağıtmayalım ve yüz bulmak için adımlara geçelim. O kısmını ben ekledim. Diğer fonksiyonların kullanımı için kaynaklarına bakarsınız.
– “Ah gülüüm, canın acıdı mı? Fena kaçırdık usturayı. Dur, dur, şu kan taşını bastık mı! Tamam, oldu işte.”
Vay be! Berber Gürkan yüzüme küçücük çizik attığı için üzülüyor. Olacak iş mi bu be? Bense –canım yanmış– ağlayacağıma, içten içten gülüyorum. Bir türlü inanasım gelmiyor o Pale Gürkan’ın berber olup beni tıraş ettiğine. Yok, yok, gülmemek elde değil, nasıl unuturum o günleri: Pale ve cengaverleri Portatif Efeler. Hey hey de hey hey. Herşey bugün olmuş gibi aklımda, ağzım kulaklarımda:
Terkedilmiş tuğla fabrikasının bahçesinde üç arkadaş oturmuşuz: Muharrem, Tamer ve ben. Bu akşam her zamankinden biraz farklı; misafirlerimiz de var. Kim mi? Portatif Efeler Oğuz ve Musa Tamoyar, ya da namıdiğer Nohut Kafa ve Matkap. Hani bizim Tamer biraz artiz ya, çekemiyorlar bunu, paysıncak yer arıyorlar. Bir bahane bulup Tamer’i, arkaları Pale Gürkan’a dövdürtecekler. Bahaneleri de hazır zaten; Pale kendine pale denmesine deli olur, Portatif Efeler de “Tamer sana pale dedi.” uydurmacasıyla dîvane oldular.