Gelisiyorum.com | Blog

Bilgisayarlı Görü (Computer Vision) Nedir?

17.05.2025
19
Bilgisayarlı Görü (Computer Vision) Nedir?

Bunu sık sık dile getiriyoruz, yapay zeka alanında gözlemlediğimiz büyüme ve inovasyon olağanüstü. Her şey çok hızlı ilerliyor. İnsan etkileşimlerini taklit edebilen Sophia gibi insansı robotlardan, insan benzeri metinleri anlama ve üretme yeteneğiyle bilinen ChatGPT gibi modellere, Amazon’un ses kontrollü sanal asistanı Alexa’nın Echo cihazlarına varana kadar hayatımıza dokunan birçok şaşırtıcı yenilik görüyoruz. Yapay zeka dünyamızı gerçekten dönüştürüyor.

Bugün bilgisayarlı görü konusuna değinelim istedik. Teknolojik aletler nasıl görebilir? Nasıl bir şeyleri yorumlar ve tepki verir? Bilgisayarlı görü olarak bilinen görüntü analizi, birçok alana entegre edilebilen son derece değerli bir beceri haline geldi. Belki çoğu kişi farkına varmasa da bu teknolojiler devrim yarattı. Üstelik halen alınacak çok yol var, yeni devrim niteliğinde gelişimlerin kapısı çoktan aralandı.

Bilgisayarlı Görü Nedir?

Bilgisayarlı görü, bilgisayar görüşü veya bilgisayarla görme olarak çevirebileceğimiz computer vision, bilgisayarlara ve sistemlere dijital görüntülerden, videolardan ve diğer görsel girdilerden anlamlı bilgiler türetilmesini sağlayan bir yapay zeka dalı. Her türlü görsel içerik algılanırken bu içeriklerden anlamlar çıkarılabiliyor. Ayrıca bilgisayarlı görünün makine öğrenimi ve sinir ağlarını kullandığını ekleyelim. Herhangi bir kusur, sorun tanımlandığında önerilerde bulunulması veya eylemler gerçekleştirilmesi için sisteme bir şeylerin öğretilmesi gerekiyor. Yani sadece içeriklerin algılanmasıyla kalmıyoruz, tepkiler üretiyoruz.

Yapay zeka nasıl bilgisayarların düşünmesini sağlıyorsa, bilgisayar görüşü de görmesini, gözlemlemesini ve anlamasını sağlıyor. Computer vision insan görüşü ile hemen hemen aynı şekilde çalışıyor lakin insanların bir avantajı var. İnsanlar, nesneleri birbirinden nasıl ayıracağını, ne kadar uzakta olduklarını, hareket edip etmediklerini veya bir sorun olup olmadığını biliyor. Küçük yaştan itibaren duyu organlarımız sayesinde doğal şekilde öğreniyoruz. Yapay zekada ise bolca bilgi beslemesi gerekiyor.

Reklam

Bilgisayar görüşünün nihai amacı, makinelerde insan görüş yeteneklerini taklit etmek. İnsanlar küçük yaştan itibaren görsel bilgileri toplamak için retinalarını, optik sinirlerini ve beyinlerinin özel kısımlarını kullanmakta. Süreç makinelerde farklı, zaten insan beynini tam olarak taklit etmek imkansız. Bunun yerine, makinelere nasıl göreceklerini öğretmek için aşağıdakiler de dahil olmak üzere çeşitli teknolojik bileşenlere güveniyoruz:

  • Sensörler: Özel sensörlerle donatılmış kameralar ve diğer cihazlar, çevremizdeki görsel verileri yakalamak için kullanılıyor. Zaten bilgi toplayan bu donanımlar olmasa computer vision diye bir şey olmazdı. Son yıllarda gördüğümüz insan benzeri robotlar da birçok sensörle donatılıyor.
  • Veri: Çoğunuz .jpg ve .png gibi görüntü, .mov ve .avi gibi geleneksel video formatlarına aşinadır. Yapay zeka ile her türlü görselden veri alınabilir. Standart görsel tekniklerin yanı sıra, birden fazla kameradan gelen görüntüler, 3B tarayıcıdan gelen çok boyutlu veriler veya tıbbi tarama cihazları gibi birçok formda bilgi toplanabileceğini ekleyelim.
  • Algoritmalar: Diğer tüm veri analizlerinde olduğu gibi, analizden önceki adım veri hazırlığıdır. Bilgisayarlı görü araştırmacılarının filtreleme, yeniden boyutlandırma veya görüntü normalleştirme dahil olmak üzere görüntü verilerini temizlemek ve hazırlamak için geliştirdikleri sayısız teknik ve algoritma bulunuyor. Görsel veriler hazırlandıktan sonra sıra asıl işlevin gerçekleştiği kısma geliyor. Derin öğrenmenin yükselişiyle birlikte, çok çeşitli görevlerde insan yeteneklerini hızla aşan güçlü derin öğrenme modelleri eğitilebiliyor.

Tek başına verilerin bir anlamı yok, en önemli kısım algoritma kısmı. Elde edilen bilgilerin yorumlanma şekli, bilgisayarın nasıl eğitildiği, mevcut bilgilerle nasıl reaksiyon verileceği gibi birçok konu var.

Bilgisayarlı Görü Nasıl Çalışır?

Kullanılan tekniklerle bilgisayarların görsel dünyayı tıpkı insanlar gibi algılaması ve anlaması kolaylaştırılıyor. Kameralar veya sensörler aracılığıyla görüntülerin/video karelerinin yakalanmasıyla başlayan çeşitli aşamalar mevcut. Bu ham görsel girdiler daha sonra verilerin genel kalitesini ve güvenilirliğini artırmak için tasarlanmış ön işleme tekniklerine tabi tutuluyor. Aşamalara kısaca bakacak olursak:

Özellik Çıkarımı

Bilgisayarlı görünün kalbinde özellik çıkarımı (feature extraction) olarak bilinen çok önemli bir adım yatmakta. Bu aşamada sistem gelen görsel verileri inceleyerek kenarlar, şekiller, dokular ve desenler gibi önemli görsel unsurları belirler ve izole eder. Çok kritik bir aşamadır, çünkü analizin sonraki aşamaları için yapı taşı görevi görmekte. Bilgisayar işlemlerini kolaylaştırmak için, tanımlanan bu özellikler sayısal temsillere çevrilerek görsel bilgiler makinelerin daha verimli bir şekilde anlayabileceği ve işleyebileceği bir biçime dönüştürülüyor.

Nesne Algılama

Farklı bir aşama olarak, nesne algılama ve tanıma da çok önemlidir. Özellikler çıkarılıp sayısal verilere dönüştürüldükten sonra, sistemin algoritmaları görüntülerdeki belirli nesneleri veya varlıkları tanımlamak ve bulmak için çalışır. Bu bilgisayarların yalnızca nesnelerin varlığını tespit etmesini değil, aynı zamanda nesnelerin ne olduğunu anlamasını da sağlar.

Görüntü Sınıflandırma

Görüntü sınıflandırma sürecinde tek tek nesneleri tanımaktan ziyade tüm görüntüler önceden tanımlanmış sınıflara veya kategorilere ayrılır. İşte bu noktada Evrişimsel Sinir Ağları (Convolutional Neural Network, CNN) devreye giriyor. CNN’ler, görüntü ile ilgili görevler için özel olarak tasarlanmış derin öğrenme modellerinin özel bir sınıfı. Karmaşık özellik hiyerarşilerini öğrenme konusunda mükemmeldir, bu da karmaşık desenleri ayırt etmelerine ve son derece doğru görüntü sınıflandırmaları yapmalarına olanak tanır.

Nesne İzleme

Nesne izleme (nesne takibi), video analizinde çok önemli rol oynayan temel bir teknik. Nesneler bir videonun ardışık kareleri boyunca ilerlerken hareketlerini izleme ve takip etmeyi mümkün kılar. Basit bir görev gibi görünebilir, ancak gözetim ve spor analitiğinden robotik ve ötesine kadar çok çeşitli sahalarda önemli bir bileşendir.

Anlamsal Segmentasyon

Bilgisayarla görme alanının daha da derinlerine indiğimizde, karşımıza semantik (anlamsal) segmentasyon olarak bilinen daha karmaşık bir kavram çıkıyor. Bu teknik, görüntüdeki her bir pikseli ilgili kategorisiyle titizlikle etiketleyerek nesne analizini yepyeni bir seviyeye taşımakta. Bir fotoğrafa baktığınızı ve yalnızca nesneleri tanımlamakla kalmayıp aynı zamanda bu nesneler içindeki her bir pikselin sınırlarını ve kategorilerini de tanımladığınızı hayal edin. Bu yüksek ayrıntı düzeyi, özellikle otonom navigasyon alanındaki inovasyonların ve yeni olanakların kapılarını açıyor.

Sürücüsüz otomobillerde ve insansız hava araçlarında sıkça kullanılan otonom navigasyon, büyük ölçüde semantik segmentasyona dayanıyor. Kara veya havada hareket eden araçlar böylelikle nesneleri algılayıp tanıyabiliyor, çevreyi ayrıntılı bir şekilde algılayabiliyor.

Bilgisayarlı Görü Nerelerde Kullanılıyor?

Tıpkı insanlar gibi, bu akıllı sistemler de görsel verileri anlamlandırabiliyor ve bunlardan değerli bilgiler çıkarabiliyor. Bu beceriler dünya üzerinde çok çeşitli sektörlerde kabul görmekte. Örneğin sağlık hizmetlerinde ve tıbbi görüntüleme alanında etkili, doktorlara ve araştırmacılara karmaşık tıbbi durumları teşhis etmede çok yardımcı olabiliyor. Otomotiv endüstrisine gelince, otonom araçların çevrelerini “görmelerini” sağlayarak yollarda güvenli navigasyon sağlamada çok önemli bir rol oynamakta. Kendi kendine hareket edebilen otonom araçların gelişimine hepimiz tanık oluyoruz, halen gelinecek noktalar var.

Görme, hepimizin her gün çeşitli işler için kullandığı temel bir duyu. Bu bağlamda, şimdiye kadar geliştirilen bilgisayar görüş teknolojilerinin birçok gerçek dünya uygulamasında kullanılmasına şaşırmamalıyız. Yapay zeka teknolojileri zamanla geliştikçe kullanım alanları da genişleyecek. Birçok kişinin işini kaybedeceğine dair söylemleri sürekli duyuyorsunuzdur. İşte her şeyin arkasında bahsettiğimiz bilgisayarlı görü, sinir ağı ve makine öğrenimi gibi teknolojiler var.

Nesne Algılama

Birçok popüler bilgisayarla görme uygulamasında nesne tanımlama mevcuttur. En iyi örnek ise sürücüsüz (otonom) otomobiller. Otonom araç üreticileri, sürücüsüz araçlarının nesneleri, şerit işaretlerini ve trafik işaretlerini algılayarak güvenli bir şekilde yol alabilmesi için çevreden görüntü almak üzere birden fazla kamera kullanıyor.

Görüntü Sınıflandırma

Bilgisayarla görmenin özünde, bir girdi görüntüsünü önceden tanımlanmış sınıflara veya kategorilere ayırmayı içeren temel bir görev olan görüntü sınıflandırma yatıyor. Sadece bir görüntüle analiz ederek arabayı, kalemi ya da herhangi bir nesneyi ayırt edebilen bir sistem düşünün. Bu temel yetenek, gelişmiş görsel tanımanın önünü açarak diğer çeşitli bilgisayarla görme uygulamalarının temelini oluşturuyor.

Yüz Tanıma

Güvenlik ve gözetim için kullanılan yüz tanıma, insanları tanımlamak için temel özellikleri analiz eder. Bu süreç, modellerin insanlardaki benzersiz yüz özelliklerini tanımlamasına olanak tanıyan geniş biyometri veritabanları üzerinde sinir ağlarını eğiterek ilerler.

Otomatik Çeviri

Google Translate gibi araçlar, kullanıcıların telefon kamerasını başka dildeki bir metne doğrultarak neredeyse anında tercih ettikleri bir dile çeviri yapabilmesine olanak tanıyor. Çoğunuz kullanmışsınızdır, Google Translate’de kamera simgesi var. Simgeye tıkladığınızda ve kamerayı üzerinde metin olan herhangi bir nesneye doğrulttuğunuzda saniyesinde farklı bir dilde çevirisini görebiliyorsunuz.

Görüntü Oluşturma

Bilgisayarla görme uygulamaları yalnızca görüntüleri anlamakla kalmıyor. Aynı zamanda üretken yapay zeka kullanarak gerçekçi görüntüler oluşturabilecek noktaya da geldik. Metin açıklamalarından görüntüler yaratan bir AI modeli olan DALL-E veya aynı şeyi videolarla yapan Sora birer örnek.

Bir başka örnek de deep fake denilen şey. Deep fake, insanları gerçekte görünmedikleri sahte videolarda tasvir etmek için kullanılan bir yazılım. Yapay zeka ve sağlanan veriler sayesinde sahte yüzler oluşturmak mümkün.

Kontrol Süreçleri

Otomotiv üreticilerinin bir araç fabrikadan çıkmadan önce kalite kusurlarını belirlemesine yardımcı olmak için computer vision teknolojileri kullanılıyor.

Video Oluşturma

Herhangi bir spor aktivitesi gibi belirli süre boyunca devam eden videolar kullanarak yeni videolar üretmek mümkün. Örneğin dakikalar veya saatler süren bir video veriliyor, yapay zeka önemli çekimlerin görüntülerini ve seslerini belirleyerek düzenleme yapıyor, kişiselleştirilmiş öne çıkan videolar sunabiliyor. Bu örnekler çoğaltılabilir.

OCR

Optical Character Recognition (Optik Karakter Tanıma), görüntülerden veya taranmış belgelerden metin tanıma ve çıkarma yeteneğini ifade eden bir teknik. Basılı veya el yazısı metinlerin dijitalleştirilmesinde, aranabilir ve düzenlenebilir hale getirilmesinde önemli bir rol oynamakta. Kullanım senaryosu ise belge yönetiminden metin çevirisine ve görme engelli bireyler için erişilebilirlik araçlarına kadar uzanıyor.

Sahne Tanımlama

Sahne tanımlama, görsel verilerden daha üst düzey bilgiler çıkararak nesne tanımanın ötesine geçmekte. Bir sahnenin düzenini tanıma, nesneler arasındaki ilişkileri anlama ve ortamın bağlamını çıkarma süreçlerini kapsıyor. Bu yetenek robotik, artırılmış gerçeklik ve akıllı şehirlerde navigasyon, bağlama duyarlı bilgi katmanı ve trafik yönetimi gibi görevler için çok önemli.

Poz Tahmini

Poz tahmini, görüntü veya videolardaki nesnelerin veya vücut parçalarının uzamsal konumunu ve yönünü belirlemekte. Örneğin fitness takibi, jest tanıma ve oyunlarda kullanılıyor ve makinelerin fiziksel dünyayı ve insan hareketlerini ayrıntılı olarak anlamasını sağlıyor.

Kısa Tarihçe

Bilim insanları ve mühendisler yaklaşık 60 yıldır makinelerin görsel verileri görmesi ve anlaması için yollar geliştirmeye çalışıyorlar. Deneyler 1959 yılında nörofizyologların bir kediye bir dizi görüntü göstererek beynindeki tepkiyi ilişkilendirmeye çalışmasıyla başladı. Kedinin ilk olarak sert kenarlara veya çizgilere tepki verdiğini keşfettiler ve bilimsel olarak bu, görüntü işlemenin düz kenarlar gibi basit şekillerle başladığı anlamına geliyordu.

Aynı dönemde, bilgisayarların görüntüleri sayısallaştırmasını ve elde etmesini sağlayan ilk bilgisayar görüntü tarama teknolojisi geliştirildi. Bilgisayarların iki boyutlu görüntüleri üç boyutlu formlara dönüştürebildiği 1963 yılında bir başka dönüm noktasına ulaşıldı. 1960’larda yapay zeka akademik bir çalışma alanı olarak ortaya çıktı ve bu aynı zamanda yapay zekanın insan görme problemini çözme arayışının da başlangıcı oldu.

1974 yılında, herhangi bir yazı tipi veya yazı karakteriyle basılmış metni tanıyabilen optik karakter tanıma (OCR) teknolojisi kullanılmaya başladı. Benzer şekilde, akıllı karakter tanıma (ICR) sinir ağları kullanarak elle yazılmış metinleri deşifre edebiliyor. O zamandan bu yana, OCR ve ICR belge ve fatura işleme, araç plakası tanıma, mobil ödemeler, makine dönüşümü ve diğer yaygın uygulamalarda kendine yer bulmuştur.

1982 yılında nörobilimci David Marr, görmenin hiyerarşik olarak çalıştığını ortaya koydu. Sinirbilimci, makinelerin kenarları, köşeleri, eğrileri ve benzer temel şekilleri algılamasına yönelik algoritmalar geliştirmeyi başardı. Eş zamanlı olarak, bilgisayar bilimcisi Kunihiko Fukushima desenleri tanıyabilen bir hücre ağı geliştirdi. Neocognitron adı verilen bu ağ, bir sinir ağındaki evrişimsel katmanları içeriyordu.

2000 yılına gelindiğinde çalışmaların odak noktası nesne tanımaydı. 2001 yılına gelindiğinde ise ilk gerçek zamanlı yüz tanıma uygulamaları ortaya çıktı. 2000’li yıllarda görsel veri setlerinin nasıl etiketleneceği ve açıklanacağı konusunda standartlaşma ortaya çıktı. 2010 yılında ImageNet veri seti kullanıma sunuldu. Binlerce nesne sınıfında milyonlarca etiketli görüntü içeren bu veri seti, günümüzde kullanılan Evrişimsel Sinir Ağları ve derin öğrenme modelleri için bir temel oluşturdu. 2012 yılında Toronto Üniversitesi’nden bir ekip bir görüntü tanıma yarışmasına bir CNN ile katıldı. AlexNet adı verilen model, görüntü tanımada hata oranını önemli ölçüde azalttı. Bu atılımdan sonra hata oranları tek hanelere düştü.

Makine Görüşü ve Bilgisayarlı Görü Arasındaki Fark

Makine görüşü (machine vision) ve bilgisayarlı görü (computer vision) birbirinden farklı şeyler. Makine görüşü, bilgisayarların ve robotların görüntüleri analiz etmesine ve üretim sürecinde bilinçli kararlar almasına yardımcı olmak için kameraların, sensörlerin ve algoritmaların kullanılması anlamına geliyor. Uygulamaları arasında otomatik denetim, kalite kontrol ve robot rehberliği gibi görevler var.

Terim genellikle üretim ve endüstriyel ortamlarda kullanılıyor, bu nedenle kapsamı uygulamaya özel ve çeşitli endüstrilerde daha geniş bir uygulama yelpazesine sahip olan bilgisayarla görmeye kıyasla daha dar. Bilgisayarlı görü genellikle makine ile görmeye kıyasla daha karmaşık işleme ve yorumlama içeriyor.

Makine Öğrenimi (Machine Learning) Nedir?

Genellikle ML olarak kısaltılan Machine Learning, deneyim ve veri kullanımı yoluyla otomatik olarak gelişen bilgisayar algoritmalarının geliştirilmesine odaklanan yapay zekanın (AI) bir alt kümesi. Daha basit bir ifadeyle Makine Öğrenimi, bilgisayarların verilerden öğrenmesini ve programlanmadan kararlar veya tahminler yapılmasına imkan sağlıyor.

Özünde makine öğrenimi, kararları ve tahminleri kolaylaştıran algoritmalar oluşturmak ve uygulamakla ilgilidir. Bu algoritmalar, daha fazla veriyi işledikçe daha doğru ve etkili hale gelerek zaman içinde performanslarını artırmak üzere tasarlanmıştır.

Geleneksel programlamada, bir bilgisayar bir görevi yerine getirmek için önceden tanımlanmış bir dizi talimatı izler. Ancak makine öğreniminde bilgisayara bir dizi örnek (veri) ve yerine getirmesi gereken bir görev verilir. Bilgisayara sadece örnekler sağlanır, verilen örneklere dayanarak görevi nasıl yerine getireceğini bulmak bilgisayara kalmıştır.

Örneğin bilgisayarın kedi resimlerini tanımasını istiyorsak, ona kedinin neye benzediğine dair özel talimatlar vermeyiz. Bunun yerine ona binlerce kedi görüntüsü sunarsak, makine öğrenimi algoritması bir kediyi tanımlayan ortak kalıpları ve özellikleri çıkarabilir. Zamanla algoritma daha fazla görüntüyü işledikçe, daha önce hiç görmediği görüntüler sunulduğunda bile kedileri tanımada daha iyi hale geliyor.

Neural Network (Sinir Ağı) Nedir?

Şimdi konuyu biraz daha açalım. Neural network, olguları tanımlamak, seçenekleri tartmak ve sonuçlara varmak için biyolojik nöronların birlikte çalışma şeklini taklit eden süreçleri kullanarak insan beynine benzer şekilde karar veren bir makine öğrenme modeli. Sinir ağları bazen yapay sinir ağı (artificial neural network, ANN) veya simüle edilmiş sinir ağı (simulated neural network, SNN) olarak da adlandırılabilir. Makine öğreniminin bir alt kümesidir, derin öğrenme modellerinin merkezinde yer alır.

Her sinir ağı, düğüm katmanlarından veya yapay nöronlardan, bir giriş katmanından, bir veya daha fazla gizli katmandan ve bir çıkış katmanından oluşuyor. Her düğüm diğerleriyle bağlantılıyken kendi ilişkili ağırlığına ve eşiğine sahip. Herhangi bir düğümün çıktısı belirlenen eşik değerinin üzerindeyse bu düğüm etkinleştirilmekte, ağın bir sonraki katmanına veri gönderilmekte. Aksi takdirde ağın bir sonraki katmanına hiçbir veri aktarılmaz.

Sinir ağları, zamana yayılacak şekilde doğrulukları öğrenmek ve geliştirmek için eğitim verilerine dayanır. Doğruluk için ince ayar yapıldıktan sonra ise bilgisayar bilimi ve yapay zeka tarafında güçlü araçlar haline gelir. Verilerin çok hızlı şekilde sınıflandırılmasına, kümelendirilmesine olanak tanınıyor. Sinir ağlarının en bilinen örneklerinden biri de Google’ın arama algoritması.

Kaynak

BİR YORUM YAZIN

ZİYARETÇİ YORUMLARI - 0 YORUM

Henüz yorum yapılmamış.

Gelisiyorum.com | Görsel Eğitim Akademisi!