9 Ağustos 2011 Salı

Jaguar –Cray XT5-HE Süper Bilgisayarının Yapısı -1


Günümüzde teknolojinin ilerlemesiyle artık birçok işlem paralel olarak hesaplanmaya ihtiyaç duymaktadır. Özellikle bilimsel çalışmalarda sıralı işlem yapan bilgisayarlar kullanıldığında çok uzun sürede hesaplanabilen işlemler için ABD,Çin vb. büyük ülkelerde süper bilgisayarlar üretilmektedir. Özel dizayn edilmiş bu bilgisayarlar paralel bir şekilde çok hızlı ve aynı zamanda çok kısa bir süre içinde büyük çaplı işlemleri hesaplayabilmektedir.

Paralel bilgisayarlar gömülü sistemler olup yapısında ki çekirdekler içerisine yerleştirilen çoklu işlemciler ile oluşturulurlar.  Bu sistemlerin tamamı aynı anda çalıştığı zaman paralelizm ortaya çıkmaktadır. Son zamanlarda bilimsel çalışmalar ve askeri amaçlar için çok sayıda süper bilgisayarlar üretilmiştir. Bu yazıımda 2010 yılı sonlarında dünyada Tianhe -1A dan sonra en hızlı ikinci süper bilgisayarı olarak kabul edilen Jaguar - Cray XT5-HE süper bilgisayarı anlatılacaktır.

Jaguar - Cray XT5-HE
Jaguar süper bilgisayarı, Cray firması tarafından Oak Ridge National laboratuarlarında üretilen petascale bir süper bilgisayardır. Bu süper bilgisayar kasım 2009 da ve haziran 2010 da Top-500 tarafından dünyanın en hızlı bilgisayarı olarak seçilmiştir. Kasım 2010 da ise liderliği Çin tarafından üretilen Tianhe -1A bilgisayarına kaptırmışsa da ikincilik koltuğunu kimseye bırakmamıştır. Aşağıdaki şekilde Bu bilgisayarın görünümü verilmiştir.




C# ta Web Cam dan Görüntü Alma


Merhaba arkadaşlar sizlerden gelen istek üzerine elimde var olan C# ta Web Cam dan Görüntü alma uygulamasını sizlerle paylaşacağım. Uygulama Sürekli olarak belli saniyeler içerisinde videodan resim Capture ediyor. Böylece Run Time Görüntü işleme uygulamalarında ve diğer uygulamalarda bunu kullanabilirsiniz. Projeyi Visual Studio 2010 da derleyip çalıştırdığınızda Aşağıdaki gibi bir çıktı vermelidir.


C# ile Halftone Görüntü Oluşturma


Halftone kelimesi dilimize noktalı biçim şeklinde çevrilebilir. Halftone işlemi gri rengin farklı tonlarını kullanarak beyaz kağıt üzerine uygun bir şekilde siyah noktaların yerleştirilmesi şeklindedir. İnsan gözünün alçak geçiren uzaysal frekans özelliğinden dolayı noktalar kümesi birbirlerine çok yakın olduğunda bu noktalar insanlar tarafından görünmez hale gelir. Yani noktalar belirli bir şekilde görünmeyip toplu noktalardan oluşmuş bir cisim şeklinde görülmektedir.


Halftone görüntüler süreklilik arz eden bir renk tonunda ki görünüme sahip olup belirli bir pattern içerisinden seçilmiş noktalara sahiptirler. Aşağıda verilen şekilde farklı büyüklükteki noktaları temsil etmek için yoğunluklar kullanılmıştır.



C# ile Resimlerin NxN Biçiminde Boyutlandırılması


Merhaba Değerli Arkadaşlar Bu yazımda sizlere C# dilini kullanarak bir resmin nasıl boyutlandırıldığını anlatacağım. Resmin boyutlandırılmasının mantığını verdikten sonra  C# ta yazdığım resim boyutlama kodunuda vereceğim. 


Genel olarak her bir resmin  yüksekliği ve genişliği vardır. Resimler adlandırılırken örneğin 20 ye 30 luk bir resim dendiği zaman resmin yüksekliği 20 ve genişliği 30 olmaktadır. Buda bilgisayar biliminde modellendiği zaman 20x30 luk bir matris demektir.

Yani yüksekliği 20 ve genişliği 30 olan bir resim modellenirken 20x30 luk bir matrisle temsil edilir. Matrisin her bir elemanı orijinal resimde bir pixeli temsil eder.



8 Ağustos 2011 Pazartesi

Visual Secret Sharing



Wu ve Chen in Şeması
Wu ve Chen adlı 2 araştırmacı 1998 yılında (2,2) lik yeni bir Visual Secret Sharing metodu önerdiler. Bu önerilen metoda göre herhangi 2 tane gizli görüntü döndürme teknikleri kullanılarak 2 Share in içerisine gömülebilir. Kullanılan döndürme açıları genellikle 90,180 ve 270 derece olmakla beraber shareler de karesel bir formata sahip olurlar. Karesel biçimde olmalarının sebebi pixellerin birbirleriyle birebir örtüşmek zorunda olmalarındandır.

2 tane NxN boyutunda halftone görüntü 2Nx2N lik share ler oluşturmak üzere her pixel 4 alt pixelle temsil edilecek şekilde genişletilir. Bu 4 alt pixele 2x2 lik genişletilmiş blok denir. Oluşturulan bu shareler gizli görüntü hakkında bilgi vermez. Diğer yandan ilk gizli görüntünün elde edilmesi için ilk iki share üst üstte pixelleri birebir örtüşmek şartıyla getirilerek elde edilir. İkinci gizli görüntünün elde edilmesi için ise ilk share 90o saat yönünün tersine döndürülüp ikinci share ile üst üste getirildikten sonra elde edilir. Wu ve Chen in algoritmasına  göre ilk share aşağıdaki gibi 4 tane eşit üçgensel bölgeye ayrılır.


Visual Cryptography -2


 Modüller Aritmetik Yöntemiyle Visual Cryptography
Shamir önermiş olduğu yönteme göre ikili bir görüntü anlamsız iki parçaya ayrılır. Her iki gürültü içeren parçalar orijinal veri ile alakalı bir bilgi vermemektedir. Ve bu anlamsız parçalar tekrardan XOR yöntemine tabi tutulduklarında ise orijinal veri tekrardan elde edilebilir.

Ancak daha önceden belirtildiği gibi Shamir in yöntemi sadece ikili görüntüler üzerinde uygulanmaktaydı. Renkli görüntüler Shamir in yöntemine benzer bir şekilde modüller aritmetikten faydalanarak 2 parçaya ayrılabilmektedir.

Bu yöntem Prof.Dr. Vasıf Vagifoğlu Nabiyev tarafından önerilmiştir. Orijinal bir görüntüyü modüller aritmetik kullanılarak gürültü içeren 2 temel parçaya ayrılabilir. Aynı şekilde gürültü içeren 2 parça görüntü tekrar benzeri işlemler uygulanılarak orijinal görüntüye ulaşılabilir.

Orijinal görüntünün her bir pozisyonunda bulunan pixel parçalardaki aynı konumda bulunan pixellerle ilişkilidir. Böylece parçalarda ki 2 pixel kullanılarak orijinal pixel elde edilebilmektedir.

Kriptografi


Kriptografi, şifre yazımı anlamına gelir. Genel anlamda Kriptografi, Veri güvenliğini sağlama amacıyla gizlilik,kimlik denetimi ,bütünlük gibi özellikleri sağlamak için önerilen matematiksel içerikli yöntemlere denir.Kriptoloji ise şifreleme bilimi olarak bilinir.

Kriptografi, verinin iletimi sırasında veriyi güçlü veya zayıf saldırılardan korumak amacıyla kullanılır ve alıcı ve gönderen kişi için veri bütünlüğünü sağlar. Kriptografik yöntemlerin hemen hepsinde iletilmek istenen veri istenmeyen kişilerin anlayamayacağı bir şekle dönüştürülür.Kullanılan kriptografik algoritmalar genellikle matematiksel içerikli olduğundan bu alanda uzman matematikçiler yetişmiştir.

Kullanılan kriptografik algoritmaların neredeyse tamamı veriyi şifrelemek için bir anahtar kullanırlar. Bunu günlük hayatımızda evlerimizin dış kapısında kullanılan anahtar-kilit ilişkisine de benzetebiliriz. Evin hırsızlar tarafından güvenli olabilmesi için kiliti açabilecek tek bir anahtar var olması gerekiyor. Her anahtar o kilidi açmamalıdır.Ve anahtarın sağlamlığı evin güvenlik derecesini bize sunmaktadır. Aynı şekilde kriptografik algoritmalarda kullanılan anahtarlarda güçlü ve gizli olması gerekir.