19 Eylül 2012 Çarşamba

Delphi DataSnap ve Uygulamaları

Delphi  DataSnap ve Uygulamaları
Her işletim sisteminde çalışan client programları yazmak istiyorum diyorsanız tam yerine geldiniz. Delphi’de DataSnap  bunun için hazırlanmıştır.  DataSnap İnternet yada İntranet üzerinden kullanılabilen platformdan bağımsız olarak serverdan fonksiyonları çağırabilen  uygulamalar olarak nitelendirilebilir. Kısacası datana nerede istersen, nasıl istersen öyle ulaşmanın yolu DataSnap teknolojisidir. Bunu ilgili bir örneği kodları ile birlikte vermek istiyorum. Kodları makalenin sonunda indirebilirsiniz.
DataSnap Tarihçesi
DataSnap teknolojisi ilk olarak Delphi 3 ile Midas teknolojisinin içinde gelmiştir. Delphi 4 te Midas II ve Delphi 5 te Midas III içinde olmuştur. COM tabanlı TCP/IP ve http (D) COM kapasiteli bağlantı ile uzak data bağlantısı kurmanın güçlü bir yolu idi. Delphi 6 da DataSnap ismiyle sunuldu ve Delphi 2007 bu yapı daha da sağlamlaştırıldı.
Delphi 2009 da yeniden DataSnap mimarisi tanıtıldı. Uzak bağlantı sunucu nesneleri ve client bağlantı üretmenin daha kolay yolu sunularak, başlangıçta sadece TCP/IP bağlantısı ile bir de Delphi Prism 2009 kullanarak .NET clientları inşa etme yeteneği ile COM bağımlılığı kaldırıldı.
Delphi 2010 DataSnap 2009 mimarisi üzerine kurulmuştur ve bu yapı yeni işlevseliklerle genişletilmiştir. İki wizard kullanarak yeni hedefleri desteklemeyi kapsayarak (VCL formları, Windows servisleri ISAPI, CGI ve web App Debugger gibi konsol uygulamaları).Daha sonraki sürümlerde (Delphi XE2) 64 bit mimariye geçen Delphi, DataSnap wizardlarını geliştirerek mobil ve masaüstü çözümleri entegre bir biçimde çalışmasını daha da kolaylaştırdı.
DataSnap Kullanmanın Avantajları

Bu çok katmanlı(multi-tier) teknolojide birkaç ana makina (server) kullanılabilir. Örneğin bir server veritabanını saklamak için diğer server uygulama dosyasını yani .exe uzantılı dosyayı çalıştırmak için kullanılabilir. Cilentlarda ayrı akıllı-akılsız terminallar, mobil cihazlar , bilgisayarlar vs. olabilir. Çok katmanlı teknoloji ile pek çok farklı cihazın bir ya da birkaç anamakinadan kontrolu sağlanbilir. Böylelikle maliyetlerden ve zamandan tasarruf edilir.

Delphi uzun zamandır çok katmanlı veri tabanı uygulamaları için gerekli teknolojiyi barındırıyordu. Önceleri MIDAS ve daha sonraları DataSnap olarak bilinen Delphi’nin çok katmanlı tekonolojisi , uzaktan bağlantı soketleri ve http ile sağlansa bile DCOM yerine, COM üzerine kuruludur . Bazen CORBA teknolojisini bile destekler.  Az biraz değişmiş versiyonu SOAP bağlantısı olarak sunulur.
Delphi 2009 ve sonrası halen klasik DataSnap teknolojisini  içermekle beraber yeni  uzaktan ve çok katmanlı teknoloji içeren yeni bir markayı da içermektedir. Kısmi olarak dbExpress mimarisi üzerine kuruludur. Bu yeni teknoloji halen DataSnap olarak adlandırılmaktadır fakat karışıklıklardan kaçınmak adına genelde “DataSnap 2009” “DataSnap 2010” “DataSnap  XE2” “DataSnap  XE3”vs olarak adlandırılmaktadır. DataSnap uygulmaları mutlaka bir anamakine (server) uygulaması olmak üzere, ihtiyaca göre DataSnap desktop client bağlantısı, DataSnap web client bağlantısı ve/veya DataSnap mobile client bağlantısı(Android, Apple iOS,BlackBerry, Windows Phone 7 vs.) olabilir.

İlk DataSnap Demosunu İnşa Edelim
Bu konuda çok detaya girmeden basit üç katmanlı demoya başlamak faydalı olacaktır.  Biri server uygulaması ve diğeri client tarafı uygulaması olmak üzere iki uygulama hazırlayacağız. Bunun için .groupproj uzantılı grup oluşturup bu dosyada, bu iki exe yi barındırmak dizayn açısından bize kolaylık sağlayacaktır.
Server tarafı
Uzak bağlantıların erişip çalıştıracağı, uzak fonksiyonları DSServerModule de barındıryoruz. Bunun için Delphi 2009 ve öncesi için menüden  File->New->VCL Form Application Delphi seçip (yani standart vcl projesi) yeni proje açalım. Sonra buna yine menüden  File->New->Other->ServerModule eklenmeli ve bir Datamodule eklenmeli.  Delphi 2010 ve sonrası için direkt File->New->Other->Datasnap server(ilk simge) seçilebilir. Böylelikle DataSnap wizardı yardımı ile proje açılmış olur. Delphi 2010 daki wizardı çalıştırırsak şekil 1 deki görüntüyü elde ederiz.




Şekil-1
Ok tuşuna basıldıktan sonra karşımıza Şekil-2 deki pencere çıkacaktır. Bu pencereden hangi seçeneği seçerseniz seçin TDSServer komponentini içeren ServerContainerUnit adlı bir Delphi uniti oluşacaktır. Diğer tüm ek komponentler TDSServer a bağlıdır. Bu komponent server özelliğine sahiptir. Eğer protokol TCP/IP seçilirse Server TDCTCPServerTransport komponenti içerecektir. Eğer iletişim protokolu olarak http seçilirse server TDSHTTPService komponenti içerecektir.

Şekil-2
Bu penceredekilerin anlamaları aşağıdaki tabloda DataSnap Server wizardının seçeneklerini göstermektedir.
Madde
Açıklaması
VCL Forms Application
Bu seçenek işaretlenirse Server yazılımı VCL Forms uygulaması olacaktır.
Console Application
Bu seçenek işaretlenirse Server yazılımı Konsol uygulaması olacaktır.
Service Application
Bu seçenek işaretlenirse Server yazılımı Servis uygulaması olacaktır.
TCP/IP
Haberleşme protokolü, genellikle  TCP/IP olarak bilinen Internet Protokol suiti
HTTP
 Hypertext Transfer Protocol olarak bilinen haberleşme protokolü . HTTP protokolü seçildiğinde Authentication seçeneği aktif hale gelir.
Authentication
Eğer bu seçeneği işaretlerseniz TDSHTTPServiceAuthenticationManager komponenti Serverın olduğu formda yer alır.  TDSHTTPService komponenti TDSHTTPServiceAuthenticationManager i   DataSnap Server için http kullanıcı doğrulama yürütmesine  izin veren  doğrulama yöneticisi olarak  kullanır. Yürütme HTTPAuthenticate olayını yürütmeyi içerir.  When Authentication seçeneği seçildiğinde, clientlarDataSnap kullanıcı adı ve şifresini SQL bağlantı özelliği olarak sağlamaya ihtiyaç duyarlar.
Add Server Methods Class
Server formuna TDSServerClass komponenti eklemek için ve client uygulamalarına server methodlarını göstercek Serverda klas tanımlamasına izin verilmesi için  bu seçeneği işaretleyin.
Ancestor
Bu seçenek Server klasınız için ankestör belirlemeye izin verir. TDSServerModule  Client uygulamalarına serverdan data setleri göstermek için seçiniz. Görsel olmayan komponentleri Server klasınızda kullanmak isterseniz TDataModule ü seçiniz. Sever klasınızı tamamen yürürlüğe geçirmek isterseniz TComponent i seçiniz.
Include sample methods
Eğer bu seçeneği seçerseniz. ServerMethodsUnit, basit bir method olan ve  verilen değeri geri dönen echoString adlı methodu içerir.

Bu wizardın sonucunda üç unit oluşur.
ServerContainerUnit1.pas
DataSnap Server uygulamasının dış dünya açılmasını sağlayan bu form DataSnap serverların olmazsa olmazı üç komponenti içeriyor. TDSServer komponenti uygulamaya Server özelliği verir.
TDSServerClass  komponenti Dinamik method müracatını kullanan uzak client uygulamadan çağırılabilen yayınlanan metodları olan server–taraflı sınıfları belirlemek için kullanılır.
TDSTCPServerTransport   TDSServer için soket-bazlı bilgi iletim  komponentidir.
ServerMethodsUnit1.pas
Bu form uzak bağlantıların çağıracağı fonksiyonların tanımlandığı formdur. Eğer uzak bağlantıya dataset türü geri dönüş değeri olan fonksiyonlar yollanmak gerekiyorsa  bu form TDSServerModule sınıfından seçilir . Delphi 2010 dan sonraki sürümlerde wizardla oluşturan formda “function EchoString(Value: string): string;”  adlı  fonksiyon varsayılan olarak hazır olarak gelmektedir. Bu fonksiyon gelen değeri geri döndürme özelliğine sahiptir. Biz  de deneme maksatlı olarak uygulamamıza “function MerhabaEchoString(Value: string): string;” fonksiyonunu ekleyelim. Bu eklediğimiz fonksiyon yollanan değere merhaba diyerek geri dönüş değerini geri yollar.
function TServerMethods1.MerhabaEchoString(Value: string): string;
begin
  Result :='Merhaba '+ Value;
end;  
AnaFsrv.pas
Bu unit anaformumuz oluyor. Server tarafında program açık iken gözükecek form.Şimdi F9 ile programı derleyelip çalıştıralım ki exe si oluşsun. Server.exe oluştuktan sonra bunu üzerine tıklayıp çalıştıralım.
Bu yeni DataSnap server mimarisi artık COM üzerine kurulu olmadığı için Data Snap server uygulaması 7x24 mantığı ile devamlı server üzerinde çalışacak şekilde açık kalmalıdır.
Bu client tarafını tasarlarken uzak fonksiyonların gözükmesi için gerekli.
Client Tarafı Uygulama Projesinin Oluşturulması
Daha sonra bu grupa sağ tıklayıp new Project ile çıkan diyolagtan VCL Forms Application ekleyerek yeni projeyi Client.dpr olarak adlandırarak ekleyim..Ve bu uygulamanın ana formuna TSQLconnection ekleyelim. F11 basarak Object Inspectörü açalım TSQLconnection komponentinin Driver özelliğinden “datasnap”ı seçelim. Sonra TSQLconnection komponentinin üzerine tıklayıp farenin sağ tuşuna basalım. Ve çıkan menüden (Şekil-3)“Generate DataSnap client Param” kısmını tıklayıp server fonksiyonlarını ve classlarını tanıtan unitin oluşmasını sağlayıp ve bunu UClass.pas olarak saklayalım ve projeye dahil edelim.



Şekil-3

TSqlServerMethod adlı komponentini “Tool palette”teki dbexpress  sekmesinde den alıp forma ekleyelim. TSqlServerMethod uzak fonksiyonları çağırmak için kullanılan bir komponent ve buna çalıtıracağı ServerMethodMerhaba adını verdik.  Object İnspectorden SQLConnection özelliğine formda “ServerConnection” adı ile tanıtılan komponenti yazdık ve ServerMethodName özelliğini oka basarak (Şekil-4)  (server.exe çalışıyor olmasına da dikkat ederek) TServerMethods1.MerhabaEchoString seçtik.



Şekil-4
Formdaki butonun onclick eventinede
procedure TForm3.Button3Click(Sender: TObject);
var
NeGeldi:String;
begin
 ServerMethodMerhaba.CommandText :='TServerMethods1.MerhabaEchoString';
 ServerMethodMerhaba.Params[0].AsString:=Edit2.Text;//fonksiyona Edit.text değeri yolla
 ServerMethodMerhaba.ExecuteMethod ;//uzak fonksiyonun serverda çalışmasına sağla
NeGeldi:= ServerMethodMerhaba.Params[1].AsString;//fonksiyonun geri dönüş değeri
 Edit2.Text:=NeGeldi;
ServerMethodMerhaba.Close; //fonksiyonun çalışmasını bitir
end;

Artık client uzak fonksiyonu çalıştıracak duruma geldi. F9 ile programı çalıştırp exe yi oluşturalım. Proje tamamdır.

Data Snap Demosunu Buradan İndirebilirsiniz.


Bir sonraki yazıda buluşmak üzere hayır dualarınızı bekliyorum.

2 Aralık 1994 Cuma

BİLGİSAYAR DESTEKLİ KIMLİK BELİRLEME SİSTEMLERİ


BİLGİSAYAR DESTEKLİ KIMLİK BELİRLEME SİSTEMLERİ

(fii tarihinden kalma BYTE'ta yayınlanmış yazılarımdan-Aralık 1994 Nostalji olsun size )

Gelecekte bir gün, kapınızdaki otomobiliniz için hiç endişelenmiyorsunuz. Çünkü oto alarmınız sizi tanıyor ve herhangi bir çalınma tehlikesi karşısında hırsızı ses ve görüntü efektleri ile korkutuyor ve gerekirse lazerle bayıltıp en yakın karakola.haber veriyor.  Hatta  o gelecekte bir gün banka kartınızın kaybolması da sizin için hiç problem değil çünkü kartınızın manyetik etiketinde sizin parmak iziniz ve gözünüzün iris tabakası ve bunun gibi size ait bilgiler saklı ve  banka kart otomatı, kartınızdaki kimlik bilgileri, kartı kullananın kimlik bilgileri ile uyuşmuyorsa kesinlikle işlem yapmıyor. Bunun gibi yüzlerce kimlik ve güvenlik problemleri o gelecekte bir günde çözülmüş olacak. Bu anlatıklarımın hiç biri hayal ürünü değil çünkü bügünün bilim adamları bunları yapabilecek kapasitede ve kimlik belirlemeyle ilgili çalışlmalar oldukça hızlı ve kararlı bir şekilde devam ediyor.
Kimlik belirleme işlemleri bugün daha çok şifrelerle yapılıyor. Ama şifre yönteminde bazen kart sahibinin şifreyi bilen bir yakını veya, bazen sahtekarlar çok küçük olasılıklada olsa deneme yanılma ile şifreyi bularak, kart sahibini ve bankayı güç duruma sokabiliyor. Bilgisayar ağlarında ise şifreleri kırmak bazı yetenekli sahtekarlar için oldukça kolay. Bu yüzden artık sadece bir şifre yanında kişilere özel kimlik bilgilerini belirleyen ve çözen sistemlerler kurmanın gerekli olduğunu anlayan teknokratlar kolları sıvadılar. Kimlik belirleme tekniğinin çıkış noktası, “bio-ölçme” dir. Bio-ölçme arkeologların verdikleri bilgilere göre ilk defa eski Mısır’da kullanılmış olup, günümüz teknolojisinde ise geçmişi otuz yıl öncesine dayanmaktadır. Bio-ölçme kişilerin biyolojik ve psikolojik özelliklerini belirleyen  bir bilim dalıdır. Bilindiği gibi her insanın kendi has bazı biyolojik ve psikolojik karakteristikleri vardır. Bunlardan parmak izi, iris numunesi, el izi, yazı ve imza stili , konuşma tarzı en bilinenleridir. Işte bu noktada  bilgisayarlar devreye girerek bio-ölçme sistemlerinin gelişmişlerini  meydana getirirler.
Bio-ölçme sistemlerinin kısaca çalışma prensibi şöyledir:
Öncelikle bio-ölçümler bir  duyarga(sensor) veya tespit aracı ile alınır, duyargadan alınan elektriksel işaretler, analog/dijital çevirici ile bilgisayarın anlayacağı kodlara genelde şablonlanarak dönüştürülür (ikili formata) ve sonra bunlar kaydedilir. Böylelikle birinci aşamada kimlik numunelerinin saklı bulunduğu bir saklama ortamı oluşturulmuş olur. Ikinci aşama  da ise  kontrol edilmesi gereken bir kimlik numunesi,  önceden saklanmış olan numunelerle karşılaştırırılır ve bu kimlik numunesinin  saklı olanlarla uyuşup uyuşmadığına bakılır. Eğer uyuşuyorsa artık kimliği belirlenen kişi korunan ortama girebilir. Bio-ölçme sistemlerinde hangi yöntemin kullanılması gerektiğini saptamak için dikkat edilmesi gereken hususlar şunlardır:
·      Gerçek kullanıcı’yı reddetme olasığının ihmal edilecek kadar az olması ya da makul ölçüler içinde olmasına dikkat etmeli.
·      Sahtekar kullanıcıyı kabul etmemeli.
·      Kullanılan bio-ölçme yöntemi herkeste olan özellik üzerine kurulu olmamalı. Örneğin kullanıcının saçının biçimi üzerine olmamalı çünkü pek çok kimsenin saç karakteristiği birbirine çok çok benzer.
·      Kullanıcıya zarar vermemeli veya canını yakmamalı.Örneğin kan tahlili ile bio-ölçme yapılmamalı ya da göze ait bilgilerle bio-ölçme yapılıyorsa kullanıcıyı kör etmemeli.
·      Bio-ölçme zamanı çok kısa olmalı
·      Bio-ölçme bilgisi saklama ortamında küçük yerler işgal etmeli.(Kimse tek bir bio-ölçme verisinin 1MB lik alan işgal etmesini istemez.)
·      Mümkünse bio-ölçme bilgilerinin manyetik etiketli ortamlar gibi taşınabilir alanlara yazılması sağlanmalı.

EL AYASI İLE KİMLİK BELİRLEME

Insan eli üç boyutlu görüntü olarak, birçok avantajları olan bir görüntüdür. Bir kere oldukça hızlı taranır ve sonuç çok hızlı alınır (yaklaşık 1.2 sn), saklama ortamı 9 baytlık bir ortamdır. Tabî bu nedenle banka kartlarındaki gibi küçük manyetik etiketli ortamlara rahatlıkla sığabilirler. Kullanıcıyı hiç rahatsız etmez ve yetkili kullanıcıyı yani gerçek sahibini reddetme olasılığı çok nadirdir.
Fakat günümüzde ticarî olarak el geometrisini belirleyen cihazlar sadece bir tanedir. Kullanıcı, özel olarak hazırlanmış bir ayna destekli dijital kamera sistemine  elini koyar. Elini yerleştirdiği yüzeyin etrafında el kenarlarını yansıtan aynalar vardır ve aynalardan yansıyan görüntü ile elin kuş bakışı görüntüsü kameraya aynı anda aktarılır.
Siyah beyaz dijital görüntü, el resminin karakteristiğini çıkarmak için bir mikro işlemci tarafından analiz edilir. Sistemin yazılım kısmı ise, gerçek zamanda analizlerle, özellikleri belirlenen el karakteristiği ile kullanıcının şifresine karşı düşen ve sistemde saklı bulunan el karakteristiği ile karaşılaştırılır. Sistemin yazılım bölümü el kararteristiklerinin uyuşup uyuşmadığına bakar.
Uygulanan analiz, ölçme ve elin geometrisinin karşılaştırılması temeline dayanır. Kameranın büyültme oranı bellidir ve gerçek uzunluk her cm başına düşen piksel(nokta veya benek) sayısına  göre kalibre edilir. Parmak uzunluğu ve genişliği el ayasının uzunluğu ve genişliği gibi elin bölümlerinin boyutu ölçülür ve kalibrasyon oranına göre bu ölçümler ayarlanır ve elde edilen bilgiler elin geometrisini belirlemeye artık hazırdır.
Bu arada 9 baytlık veri alanın kulağa küçük bir boyutmuş gibi gelmesine aldanmayın. 9 baytlık alana biribirinden farklı 4.77 10 21  (272 ) adet sayı yazma imkanımız var.  Yani dünyada yaklaşık 6 milyar insan(dolayısıyla el) olduğuna göre ellerin birbirine karıştırılması olasılığı yok gibi birşey.  Bu sistemin diğer bir avantajı ise düşük maliyetli olması. Dez avantajı ise sahtekarlığı kafasına koymuş birinin çok küçük olasılıklada olsa, yetkili kullanıcının şifresini zor kullanarak  ele geçirip ve bir şekilde yine zor kullanarak elinin maskını yapması durumunda sistemin bu maskın yaşayan bir doku olduğunu anlamaması. (Şimdi  diyeceksiniz ki niye sisteme  termal bir duyarga yerleştirip  bu  maskı farketmesi sağlanamamıştır. Cevap çok basittir. Bu kadarını düşünen sahtekar elbette maskı insan sıcaklığında tutmayı başarabilir ve termal duyarga, sistem maliyetini yükseltmekten başka bir işe yaramaz).

PARMAK İZİ

Parmak izi üzerinde en çok araştırma yapılan bio-ölçme  yöntemidir. Ayrıca otomasyonu  yapılmaya çalışılan ilk yöntemdir. Çünkü polis neredeyse bir asırdır suçluların tesbitinde bu yöntemi kullanmaktadır. Bu yöntemin otomasyonu ilk defa 1971 yılında geliştirilmiştir. Bu yöntemin algoritması ise ilk defa 1950 yıllarında geliştirilmiştir. Fakat bu konu üzerinde yeni yapılan çalışmalar bu yöntemin yapay sinir ağları ile yapılmasının daha uygun olacağını göstermiştir.  Bu sistem, ışık, lens’ler ve CCD görüntü duyargaların bir araya getirilmesi ile oluşturulmuş yoğun bir ekranı parmak izinin kaliteli bir görüntüsünü yüksek çözünürlükle almak için kullanır. Sistem müşteriye özel yonga ile işleletilir ve arzu edilirse kolayca bir  IBM PC ye uyumlu duruma getirilebilir.
Kayıt için kullanıcı şifresini girer ve parmak ucunu cam veya plexiglass yüzeye koyarak parmak izinin görüntü duyargası tarafından alınmasını sağlar. 250KB lık görüntü analiz edilerek sayısal bilgiye çevrilir. Sonuç olarak bu görüntü 1KB’ye çeşitli yöntemlerle indirgenerek,  parmak izinin matematiksel karakteristiği olarak saklanır. Bu işlem yaklaşık 30 saniye sürer. Kimliği doğrulama işlemi ise 1 saniye sürer. Bu belirleme işleminin yetkili kullanıcıyı tanımama olasılığı %2-3 tür. Yanlış bir kabul yapma olasılığı ise yüzbin birdir. Bu sistem nispeten ucuza mal olamaktadır.
Parmak izi yöntemi halk arasında bilinen bir yöntem olduğundan, toplumun tepkisi bu yönteme oldukça olumludur. Sahtekarlığın  önlemesi açısından en caydırıcı yöntemlerden biridir.
Hala hazırda 40 dan fazla ülkede kullanılmaktadır. Italya’da finansal kurumlarda Avusturalya’da banka otomatlarında, Maryland hapishane sisteminde ziyaretçi ve mahkumların kontrolünde bu yöntem kullanılmaktadır.

         İRİS

            Parmak izinden daha detaylı olmasına rağmen son birkaç yıl öncesine kadar, göze zarar vermeden, göze bir yüzeyin yerleştirilmesinin zor olmasından dolayı, üzerinde durulmayan bir yöntemdi. Fakat şimdi yeni bio-ölçme araçlarının gelişmesiyle aktif olarak gündeme gelmiştir. Standart monokrom video veya fotografik teknolojilerin, sağlıklı ve güçlü yazılımlarla ve standart video görüntüleme tekniklerinin birleşimi ile,  irisin 30-45 cm öteden görüntüsü alınabilmektedir. 
Araştırıcıların bulgularına göre her irisin oldukça ayrıntılı ve kendine has dokusu var ve onlarca yıl bu özelliği değişmiyor. Gözün renkli diski olan irisin gözlenebilen özellikleri;
 büzülme izleri, paralel çizgileri, çukurcukları, kollojen fiberleri, koyu alanları, ipliksi yapıları, sprial dokuları, çembersel çizgileri ve noktalı kısımlarıdır.
Irisin yapısı parmak izi gibi kişiye hastır, fakat çok fazla karakteristiğinin olması açısından parmak izinden daha üstüntür. Ayrıca suçlular parmak izlerini tahribe kalkışmabilmelerine karşılık, kendi göz irislerinin kör olması tehlikesi nedeniyle tahrip edemezler ve cerrahî bir müdehale ile iris değiştirilemez.
Bu yöntemde önce iris görüntüsü video cihazları ile alınır görüntü sayısal bilgiye çevrilir. Bu işlem bir seri integro-diferansiyel iki boyutlu lineer operatörleri kullanmayı gerektirir.
Analiz sırasında iris görüntüsünün  uzaysal frekansları hakkındaki bilgiyi, yönlenmeyi ve  2D(iki boyutlu) pozisyonu için mümkün olan en yüksek çözünürlüğü sağlayan, iki boyutlu Gabor filtre fonksiyonu vasıtasıyla irisin dokusal bilgisi çıkarılır. 2D ilk Gabor transformasyonunun katsayıları yapay sinir ağları tekniği ile ikili sisteme çevrilmiş görüntüden çıkarılır. Sinyal analizinin sonucunda 256 baytlık iris kodu hesaplanarak ilerki karşılaştırmalar için dosya kodu olarak saklanır. Iris odaklandıktan sonra iris kodunun hesaplanması 100 ms lik zaman gerektirir.
Bir kişiye ait iris izini tanımadaki bir sonraki adımı, istatiksel karar teorisi çerçevesinde  formülasyon yapmaktır. Bu işlem şablon iris kodu ile gerçek zamanlı iris kodunun bit bit karşılaştırması sonucu ortaya çıkan bir ölçme hatası olan Hamming uzaklık denilen hatanın istatiksel testi için yapılır.
       Hamming uzaklık iris tarama sistemininde kullanıcı reddetme veya kabul etme kararı için kullanılır. Yapılan testler kabul ve red kararındaki hatanın bir birine eşit olduğunu göstermektedir (131 000 de 1). Bu uygulama henüz piyasaya sunulmamıştır.

YÜZ 

Otomatik kimlik belirlemede tüm yüzü kullanmak, yüzün görünüşünün değişmesi yüzünden oldukça karmaşık bir iştir.Yüze ait ifadeler saç biçimine,baş konumuna, kamera açısına ve ışık durumuna göre farklı olabilir. Fakat ileri görüntü işleme teknikleri ve görüntüleri sınıflamak için sinir ağlarının kullanımı bu işi yine de mümkün kılmaktadır.
Yapay sinir ağları ilk defa 1950 ve 1960 larda ortaya atılmıştı. Bunlar yekpare olarak birbirine bağlı basit hesaplama elemanlarından oluşmuştur. Bunların tasarımı, biyolojik sinir ağlarının ve beyinin organizasyonunu ve performansını taklit etmeye dayanır. Yapay sinir ağları öğrenebilirler, yeni durumlara  uyum sağlayabilirler ve hem statik hem de dinamik olarak verilen numuneyi tanıyabilirler ve tüm bunları belirli bir tolerans içinde yapabilmektedirler. Işte bu yüzden yapay sinir ağlarını yüzün tanınmasında kullanmak çok uygundur.
NeuroMetric Vision Systems firmasına ait yüz tanıma sistemi, kamera açısının ölçü aralığının kontrol edilmesi ve ışık açısının ayarlanmasıyla, saç stili baş pozisyonun değişimi gibi yüzde olabilecek ufak tefek değişimleri bile fark edecek durumdadır. Yüze ait görüntü karşılaştırma teknikleri, anahtar görüntünün özelliklerinin ölçülmesi ve yüze ait geometrinin çıkarılması da bu çalışmada kullanılır. Ayrıca mantıksal kurallara dayalı veya yapay sinir ağlarını içeren bir yazılım bu çalışmaya eşlik eder. NeuroMetric sistem IBM uyumlu 386 ve 486 PC ler altında bir matematik işlemci, bir dijital işaret işleme (DSP) kartı ve çerçeve tutucu bir kartla çalışır. Sistem görüntüleri bir siyah-beyaz video kamera veya gerçek zamanlı video kayıtçısından alır. Dijital işaret işleme teknikleri, ölçme teknikleri ve birtakım matematiksel transformasyonlarla bir özellik vektör kümesi elde edilir. Sinir ağlarına bu vektör giriş olarak verilir ve sinir ağları bu vektöre uyan birine cevap vermesi için eğitilir.  Bu sistem bir kimseyi saniyenin 20 de biri gibi kısa bir zamanda tanıyabilir.
Nasıl insanlar ikizler gibi birbirine çok benzeyen insanları birbirine karıştırıyorsa, sinir ağları da karıştırabilir. Bu teknik ayrıca giriş çıkış kontrolleri için oldukça uygundur.

KONUŞMA

Herhalde en istenmiyen bio-ölçme yöntemlerinden biri doğal konuşma tarzıdır. Konuşma tarzı oldukça karmaşıktır. Çünkü sesin uzaktan veya yakından gelmesi ses tellerinin kas yapısı , psikolojik unsurlar ve ses tellerinin hastalanması gibi bir çok durum sesin tanınmasını zorlaştırır. En yeni teknolojilerden biri olan AT&T Smart Card otomatik konuşucu sistemlerinde  kullanılmaktadır. AT&T prototipi, her bir ses numunesini bir kredi kartı boyutunda olan bellek kartında saklar. Kısacası birisi bankaya gittiğinde seçilmiş iki veya üç heceli bir kelimeyi mikrofona söyleyip ve şifresini girecek ve işlem yapmaya başlıyabilecek. Bu kelimeyi kullanıcı seçer ve bu her hangi bir lisanda da olabilir.
            Telefon bağlantısı için sisteme takılan dijital işaret işleme kartına sahip 386 PC temelli bir sistem, konuşmayı 8kHz’de sayısala çevirir ve otomatik olarak sayısal bilginin her bir bölümü için sonuç noktası oluşturarak bölmelendirir. Konuşmanın örnekleri milisaniyeler mertebesinde alınır. Örnekler ölçülüp daha sonra konuşmanın ses perdesi, hız, enerji yoğunluğu  ve dalga boyu dahil olmak üzere en az 20 değişken parametresine ilişkin ölçmeler normalize edilir.
            Insanın telaffuz ettiği bir kelime her defasında birbirinin tıpatıp aynısı olmayacağından bir kelime kullanıcıya yaklaşık sekiz kere tekrar ettirilir. Sekiz kez tekrarlatılan konuşmanın her biri spektral görüntü haline çevrilir. Bu spektral görüntüler üstüste biniştirilir. Binişen örnekler arasındaki 30-50 milisaniyelik farklar analiz edilir. Bir kelimeyi oluşturan dalga boyu serisi, diğer tekrarlatılan kelimelerinki ile karşılaştırılarak, kabul edilebilir bir dalga boyu aralığı, yalnışlıkla kullanıcı olmayan birisinin kabul edilmesi veya yalnışlıkla asıl kullanıcının kabul edilmemesi ihtimalini önlemek amacıyla seçilir. Bu dalga boyu aralığı bellek kartında 700 bayt’tan daha az yer işgal eder. Sistemi kullanan biri  aynı otomatik konuşucu makinalarında(AutomaticTellerMachine) kullanılan manyetik etiketli kartlarda olduğu gibi, kendi Smart Cardını bir okuyucunun içine  yerleştirir. Konuşma doğrulanmış ise işlem devam eder.
            Böyle bir banka kartı gibi bir taşınabilir  saklama birimine sahip olmak, sistemin kolayca hantallaşabilecek bir merkezî veritabanı olmaksızın çalışmabilmesine  imkan verir. Yani bu tip kimlik belirleme sistemine sahip olan patronlar saklama birimlerinden ve zamandan tasarruf ederler.
            Tüm olumlu yönlerine rağmen bu yönteminde bir kaç sınırlayıcı yönleri var. Bir kere aynı ortamda yıllarca yaşıyan ve zaten anatomik olarak ses tellerinin  yapıları birbirlerine benzeyen aile fertlerinin konuşma tarzları  birbirine benzeyebilir. Ve bu fertlerden biri kullanıcıyı zorlayarak şifre kelimeyi öğrenebilir ve sistem bu zorba akrabayı kabul edebilir. Ya da kullanıcı ana dili olmayan pek iyi bilmediği bir dilde şifre sözcük seçmiştir ve telaffuzu her seferinde farklı olabilir. Bu durumda bellek kartına kaydedilecek olan şifre kelime bir kaç kez tekrarlanarak değişim aralığı çıkarıldığından, bu değişim aralığı büyük olabileceğinden, kullanımda hatalar meydana gelebilir. Akustik teori ve ses tellerinin karakteristiği üzerinde yapılan son çalışmalar ve sinir ağları teorisi , konuşucuyu doğru tesbit etmek kadar sesin sıkıştırılması konusuna oldukça yaklaştılar.
            Üzerinde çalışılan diğer alternatif , konuşmacının ne söylemeye çalıştığını sisteme tahmin ettirmeye izin veren ve durum değişimlerinin olasılıklarını düşünen Hidden Markov Modeline dayalı bir algoritma üzerine tartışılmaktadır. Bu teknolojiyi telefon ağlarında kullanmak yapılan testlere göre oldukça zordur.
            ATM uygulamaları gösterime sunulmuş olup ticarî olarak da piyasaya sunuma hazırdır.

SONUÇ
Hem maliyet hem doğruluk ve saklama biriminin küçüklüğü düşünüldüğünde optimum bio-ölçme sistemi bulmak biraz zor. Sesin tanınmasına dayanan bio-ölçme yöntemi bilgisyar ağlarının güvenliğinde veya telefon ağlarında konuşan kişinin tanınmasında yaygın olarak kullanılabilir. Anlatılan diğer yöntemler ise  her türlü güvenlik sistemlerine uygulanablir. Yazı  ve imza stilinin tanınmasına dayanan bio-ölçmeler ancak yapay sinir ağları ve algoritmaları aşırı geliştiğinde yaygın olarak kullanılabilecek. Yine yapay sinir teknolojisinin gelişmesine bağlı olarak insanın yürüş tarzından ve tavırlarından da kim olduğunu anlayacak bio-ölçme sistemleri geliştirilecek. Kimbilir yakın bir gelecekte aşırı gelişkin ve ucuza mal edilen elektron mikroskopları ile kişinin genetik kodları bile kullanıcının canını yakmadan alınablecek ve küçük manyetik etiketli ortamlarda saklanabilecek ve en basit birimlerin güvenliğinde bile kullanılabilecek. Işte o zaman  tüm sahtekarlıklar önlenmiş olacak.


KAYNAKLAR:
1. IEEE Spectrum, Feb. 1994
2. IEEE Transaction on Neural Networks, Mar. 1994
3. NeuroComputing, R.H. Nielsen, AW Pub.Comp. 1989




ALLAH GÜZEL İSİMLERİ(ESMAÜL HÜSNA) VE KAİNAT VE KORONA VİRÜSÜNÜN HAYIRLI TARAFLARI

Kuranı kerimde Bakara 180 de"En güzel isimler Allah’ındır; bu güzel isimlerle O’na dua edin, O’nun isimleri hakkında doğru inançtan sap...