YOLO Vision 2026:
Entegrasyonlar

U-Net mimarisi ve uygulamaları üzerine bir rehber

U-Net mimarisi, görüntü bölümlemeyi nasıl desteklediği, uygulamaları ve bilgisayarlı görünün evrimindeki önemi hakkında bilgi edin.

ABAbirami Vina5 min read
Görüntü bölümleme için U-Net mimarisi

Computer vision, görsel verileri analiz etmeye odaklanan bir yapay zeka (AI) dalıdır. Fabrikalardaki ürünleri inceleme sürecini otomatikleştirmek ve otonom araçların yollarda gezmesine yardımcı olmak gibi birçok son teknoloji sistemin önünü açmıştır.

En bilinen bilgisayarlı görü görevlerinden biri nesne tespitidir. Bu görev, modellerin sınırlayıcı kutular kullanarak bir görüntü içindeki nesneleri bulmasını ve tanımlamasını sağlar. Sınırlayıcı kutular çeşitli uygulamalar için yararlı olsa da, bunlar yalnızca nesnenin konumuna dair kaba bir tahmin sunar.

Ancak hassasiyetin kritik olduğu sağlık gibi alanlarda, görme tabanlı YZ kullanım durumları yalnızca bir nesneyi tanımlamaktan daha fazlasına bağlıdır. Çoğu zaman, nesnelerin tam şekli ve konumuyla ilgili bilgilere de ihtiyaç duyarlar.

Tam olarak segmentasyon adlı bilgisayarlı görü görevi bunu yapmak için tasarlanmıştır. Sınırlayıcı kutular kullanmak yerine, segmentasyon modelleri nesneleri piksel düzeyinde algılar. Yıllar içinde araştırmacılar segmentasyon için özel computer vision models geliştirmiştir.

Bu modellerden biri de U-Net'tir. Daha yeni ve gelişmiş modeller performansını geride bırakmış olsa da U-Net, history of computer vision içinde önemli bir yere sahiptir. Bu makalede U-Net architecture yapısına, nasıl çalıştığına, nerede kullanıldığına ve günümüzdeki daha modern segmentasyon modelleriyle nasıl karşılaştırıldığına daha yakından bakacağız.

Segmentation of an aerial scene using the U-Net deep learning model

Şekil 1. U-Net derin öğrenme modeli kullanılarak yapılan bir segmentasyon örneği. (Source)

Görüntü segmentasyonunun geçmişi#

U-Net'in ne olduğuna dalmadan önce, ilk olarak image segmentation modellerinin nasıl evrimleştiğine dair daha iyi bir fikir edinelim.

Başlangıçta bilgisayarlı görü, bir görüntüdeki nesneleri ayırmak için kenar tespiti, eşikleme veya bölge büyütme gibi geleneksel tekniklere güveniyordu. Bu teknikler, kenarları kullanarak nesne sınırlarını tespit etmek, bölgeleri piksel yoğunluğuna göre ayırmak ve benzer pikselleri gruplamak için kullanılıyordu. Basit durumlarda çalışıyorlardı ancak görüntüler gürültülü olduğunda, şekiller çakıştığında veya sınırlar belirsiz olduğunda genellikle başarısız oluyorlardı.

2012 yılında derin öğrenmenin yükselişini takip eden araştırmacılar, 2014 yılında anlamsal segmentasyon gibi görevler için tam evrişimli ağlar (FCN'ler) kavramını sunmuştur. Bu modeller, bilgisayarın görüntüyü daha küçük parçalara ayırmak yerine bir bütün olarak tek seferde incelemesine olanak tanımak için bir convolutional network öğesinin belirli kısımlarını değiştirmiştir. Bu, modelin bir görüntüde ne olduğunu daha net gösteren ayrıntılı haritalar oluşturmasını mümkün kılmıştır.

Timeline of the evolution of deep learning-based segmentation algorithms

Şekil 2. Derin öğrenme tabanlı segmentasyon algoritmalarının evrimi. (Source)

FCN'leri temel alan U-Net, Freiburg Üniversitesi'ndeki araştırmacılar tarafından 2015 yılında tanıtılmıştır. Orijinal olarak biomedical image segmentation için tasarlanmıştır. Özellikle U-Net, açıklamalı verilerin sınırlı olduğu durumlarda iyi performans gösterecek şekilde tasarlanmıştır.

Bu arada, UNet++ ve TransUNet gibi sonraki sürümler, dikkat katmanları ve daha iyi özellik çıkarımı gibi yükseltmeler ekledi. Dikkat katmanları modelin önemli bölgelere odaklanmasına yardımcı olurken, geliştirilmiş özellik çıkarımı daha detaylı bilgileri yakalar.

U-Net nedir ve özellikler model içinde nasıl akar?#

U-Net, görüntü segmentasyonu için özel olarak oluşturulmuş bir deep learning modelidir. Girdisi olarak bir görüntü alır ve her pikseli ait olduğu nesneye veya bölgeye göre sınıflandıran bir segmentasyon maskesi üretir.

Model adını U şeklindeki mimarisinden alır. İki ana kısımdan oluşur: görüntüyü sıkıştıran ve özelliklerini öğrenen bir kodlayıcı (encoder) ve onu orijinal boyutuna geri genişleten bir kod çözücü (decoder). Bu tasarım, modelin hem görüntünün genel yapısını hem de daha ince detaylarını anlamasına yardımcı olan simetrik bir U şekli oluşturur.

U-Net'in kritik bir özelliği, kodlayıcıdan gelen bilgilerin doğrudan kod çözücüye iletilmesine olanak tanıyan atlama bağlantılarının (skip connections) kullanılmasıdır. Bu, modelin görüntü sıkıştırıldığında kaybolabilecek önemli detayları koruyabileceği anlamına gelir.

U-Net'in mimarisine genel bakış#

İşte U-Net mimarisinin nasıl çalıştığına dair bir özet:

  • Girdi görüntüsü: U-Net, tıbbi tarama veya satellite photo gibi 2 boyutlu bir görüntü ile başlar. Buradaki amaç, görüntüdeki her piksele bir sınıf etiketi atamaktır.
  • Aşağı örnekleme (Downsampling): Görüntü, önemli görsel özellikleri öğrenen evrişimli katmanlardan geçer. Görüntü farklı katmanlardan geçtikçe çözünürlüğü azalır ve model daha geniş desenleri tanımlar.
  • Dar boğaz katmanı (Bottleneck layer): Ağın merkezinde, özellik haritaları yüksek seviyeli semantik özellikleri yakalarken en küçük uzamsal çözünürlüğe ulaşır. Basitçe ifade etmek gerekirse, özellik haritalarının bu sıkıştırılmış temsili, girdinin genel bağlamıdır.
  • Yukarı örnekleme (Upsampling): Ağ daha sonra çözünürlüğü kademeli olarak artırarak görüntüyü yeniden oluşturur. Transpoze evrişimler, özellik haritalarını orijinal boyuta doğru genişletmeye yardımcı olur.
  • Atlama bağlantıları: Aşağı örnekleme yolundaki özellik haritaları, yukarı örnekleme yolundakilerle birleştirilir. Bu, yüksek seviyeli bağlamsal bilgileri entegre ederken ince ayrıntılı uzamsal detayların korunmasına yardımcı olur.
  • Çıktı bir segmentasyon haritasıdır: Nihai çıktı, girdi boyutuyla eşleşen piksel bazlı bir segmentasyon maskesidir. Her piksel nesne, arka plan veya ilgi alanı gibi bir kategoriye sınıflandırılır.

Diagram of the U-Net encoder-decoder architecture

Şekil 3. U-Net mimarisi şeması. (Source)

ViT ve U-Net arasındaki farkı anlamak#

U-Net'i keşfederken, segmentasyon görevlerini de yerine getirebilen Vision Transformer (ViT) gibi diğer derin öğrenme modellerinden nasıl farklı olduğunu merak ediyor olabilirsin. Her iki model de benzer görevleri gerçekleştirebilse de yapıları ve segmentasyonu ele alış biçimleri açısından farklılık gösterirler.

U-Net, kodlayıcı-kod çözücü yapısındaki evrişimli katmanlar aracılığıyla görüntüleri piksel düzeyinde işleyerek çalışır. Genellikle tıbbi taramalar veya sürücüsüz araç sahneleri gibi hassas segmentasyon gerektiren görevler için kullanılır.

Öte yandan Vision Transformer (ViT), görüntüleri yamalara (patches) böler ve bunları dikkat mekanizmaları aracılığıyla eşzamanlı olarak işler. U-Net'in evrişimli yaklaşımının aksine, görüntünün farklı bölümlerinin birbirine göre önemini tartmasını sağlayan bir mekanizma olan öz-dikkat (self-attention) kullanarak, görüntünün farklı bölümlerinin birbiriyle nasıl ilişkili olduğunu yakalar.

Bir diğer önemli fark, ViT'nin genellikle iyi çalışmak için daha fazla veriye ihtiyaç duymasıdır, ancak karmaşık desenleri yakalamada harikadır. U-Net ise daha küçük veri kümeleriyle iyi performans gösterir, eğitilmesi daha hızlıdır ve genellikle daha az eğitim süresi gerektirir.

U-Net modelinin uygulamaları#

Artık U-Net'in ne olduğunu ve nasıl çalıştığını daha iyi anladığımıza göre, U-Net'in farklı alanlarda nasıl uygulandığını keşfedelim.

Tıbbi görüntülemede beyin kanaması segmentasyonu#

U-Net, karmaşık medical images öğelerinin piksel düzeyinde segmentasyonu için, özellikle araştırmalardaki en parlak döneminde güvenilir bir yöntem haline gelmiştir. Araştırmacılar tarafından BT ve MR görüntülerindeki tümörler ve iç kanama belirtileri gibi tıbbi taramalardaki kilit alanları vurgulamak için kullanılmıştır. Bu yaklaşım, teşhislerin doğruluğunu önemli ölçüde artırmış ve araştırma ortamlarında karmaşık tıbbi verilerin analizini kolaylaştırmıştır.

U-Net'in sağlık araştırmalarındaki etkisine bir örnek, tıbbi taramalarda felç ve beyin kanamasının tanımlanmasında kullanılmasıdır. Araştırmacılar, kafa taramalarını analiz etmek ve endişe verici alanları vurgulamak için U-Net'i kullanarak acil müdahale gerektiren vakaların daha hızlı tanımlanmasını sağlayabildiler.

Segmentation of hemorrhagic stroke lesions in medical scans using 3D U-Net

Şekil 4. 3D U-Net kullanılarak hemorajik inme lezyonlarının segmentasyonu. (Source)

Tarımda mahsul segmentasyonu#

Araştırmacıların U-Net'i kullandığı bir diğer alan, özellikle mahsullerin, yabani otların ve toprağın segmentasyonu için tarımdır. Çiftçilerin bitki sağlığını izlemelerine, verimi tahmin etmelerine ve büyük çiftliklerde daha iyi kararlar almalarına yardımcı olur. Örneğin U-Net, mahsulleri yabani otlardan ayırabilir, bu da herbisit uygulamasını daha verimli hale getirir ve israfı azaltır.

Araştırmacılar, drone görüntülerindeki hareket bulanıklığı gibi zorlukların üstesinden gelmek için U-Net'i image deblurring teknikleriyle geliştirmiştir. Bu, havadan taramalar gibi hareket halindeyken veri toplandığında bile daha net segmentasyon yapılmasını sağlar.

U-Net separating crops from weeds in an agricultural field

Şekil 5. U-Net ile tarım arazilerinde ekinlerin yabani otlardan ayrılması. (Source)

Otonom sürüş#

Daha gelişmiş yapay zeka modelleri tanıtılmadan önce U-Net, segmentasyonun otonom sürüşü nasıl geliştirebileceğini keşfetmede hayati bir rol oynamıştır. Autonomous vehicles içinde U-Net'in anlamsal segmentasyonu, bir görüntüdeki her pikseli yol, araç, yaya ve şerit çizgileri gibi kategorilere ayırmak için kullanılabilir. Bu, araca çevresinin net bir görünümünü sağlayarak güvenli navigasyona ve etkili karar vermeye yardımcı olur.

Road scene with the drivable area segmented using U-Net

Şekil 6. Sürülebilir alanın U-Net kullanılarak segmentlere ayrıldığı bir yol sahneleri. (Source)

U-Net'in artıları ve eksileri#

Bugün bile U-Net, basitlik, doğruluk ve uyarlanabilirlik dengesi nedeniyle araştırmacılar arasında görüntü segmentasyonu için iyi bir seçim olmaya devam ediyor. Öne çıkmasını sağlayan temel avantajlardan bazıları şunlardır:

  • Farklı yöntemler için uyarlanabilir: U-Net, 3D tıbbi taramalar, uydu görüntüleri ve hatta video kareleri dahil olmak üzere farklı veri türlerine uyarlanmıştır.
  • Optimize edildiğinde hızlı çıkarım: Doğru bir şekilde ayarlandığında U-Net verimli çalışabilir, bu da onu gerçek zamanlı veya gerçek zamana yakın uygulamalar için uygun hale getirir.
  • Open-source ve topluluk: U-Net, büyük derin öğrenme kütüphanelerinde mevcuttur ve büyük bir geliştirici ve araştırmacı topluluğu tarafından desteklenmektedir.

U-Net'in birçok güçlü yönü olsa da, akılda tutulması gereken birkaç sınırlama da vardır. İşte dikkate alınması gereken bazı faktörler:

  • Veri kalitesine duyarlı: U-Net'in performansı, gürültülü veya düşük çözünürlüklü görüntüler gibi düşük kaliteli verilerden olumsuz etkilenebilir.
  • Küçük veri kümeleriyle aşırı uyuma (overfitting) yatkın: U-Net sınırlı verilerle iyi performans gösterse de, özellikle veri kümesi çok küçükse veya çeşitlilikten yoksunsa, doğru bir şekilde düzenlenmediği takdirde aşırı uyum riski taşır.
  • Hesaplama kaynakları: U-Net, özellikle büyük veri kümeleriyle çalışırken hesaplama açısından pahalı olabilir ve eğitim için önemli donanım kaynakları gerektirir.

Öne çıkanlar#

U-Net, görüntü segmentasyonunun evriminde önemli bir dönüm noktası olmuştur. Derin öğrenme modellerinin, özellikle tıbbi görüntüleme gibi alanlarda daha küçük veri kümeleri kullanarak doğru sonuçlar verebileceğini kanıtladı.

Bu atılım, çeşitli alanlarda daha gelişmiş uygulamaların önünü açtı. Bilgisayarlı görü gelişmeye devam ettikçe, U-Net gibi segmentasyon modelleri makinelerin görsel verileri yüksek hassasiyetle anlamasını ve yorumlamasını sağlamada temel bir rol oynamaya devam ediyor.

Kendi bilgisayarlı görü projelerini oluşturmak mı istiyorsun? Yapay zekaya daha derinlemesine dalmak için GitHub repository depomuzu keşfet ve licensing options seçeneklerimize göz at. Çözüm sayfalarımızı ziyaret ederek computer vision in healthcare alanının verimliliği nasıl artırdığını öğren ve AI in retail etkisini incele! Büyüyen community topluluğumuza şimdi katıl!

Explore solutions

Real-time AI that works with your team

Robotikte AI

Daha akıllı makineleri Ultralytics YOLO modelleriyle destekle. Robotikteki Vision AI; otonom navigasyonu, algılamayı, nesne takibini ve gerçek zamanlı kontrolü yönlendirir.
Daha fazla bilgi edin
Real-time AI that works with your team

Lojistikte Yapay Zeka

Ultralytics YOLO modelleri ile lojistiği kolaylaştır. Görü Yapay Zekası; paket inceleme, ayıklama, araç takibi ve gerçek zamanlı depo güvenliği izlemeyi mümkün kılar.
Daha fazla bilgi edin
Real-time AI that works with your team

Perakendede AI

Perakendeyi Ultralytics YOLO modelleri ile yeniden hayal et. Görü Yapay Zekası; envanter takibi, raf izleme, sıra yönetimi ve daha akıllı müşteri içgörüleri sağlar.
Daha fazla bilgi edin
Real-time AI that works with your team

Sağlıkta Yapay Zeka

Ultralytics YOLO modelleriyle sağlık çözümleri oluştur. Sağlıkta görüntü tabanlı yapay zeka; daha hızlı tıbbi görüntülemeyi, daha akıllı teşhisleri ve hasta izlemeyi güçlendirir.
Daha fazla bilgi edin
Real-time AI that works with your team

Üretimde Yapay Zeka

Ultralytics YOLO modelleri ile üretimi optimize et. Görü Yapay Zekası; kalite kontrol, kusur tespiti, KKD uyumu ve montaj hattı otomasyonunu yönlendirir.
Daha fazla bilgi edin
Real-time AI that works with your operation

Otomotivde yapay zeka

Ultralytics YOLO modelleriyle otomotivde bilgisayarlı görü uygula. Görüntü tabanlı yapay zeka; yol güvenliğini, sürücü yardımını ve araç otomasyonunu daha akıllı yollar için geliştirir.
Daha fazla bilgi edin
Real-time AI tailored to your operation

Tarımda yapay zeka

Ultralytics YOLO modelleriyle akıllı tarıma görüntü tabanlı yapay zeka getir. Daha yüksek ve akıllı verimler için mahsul takibini, hayvancılık izlemeyi ve hassas tarımı güçlendir.
Daha fazla bilgi edin
Real-time AI that works with your team

Robotikte AI

Daha akıllı makineleri Ultralytics YOLO modelleriyle destekle. Robotikteki Vision AI; otonom navigasyonu, algılamayı, nesne takibini ve gerçek zamanlı kontrolü yönlendirir.
Daha fazla bilgi edin
Real-time AI that works with your team

Lojistikte Yapay Zeka

Ultralytics YOLO modelleri ile lojistiği kolaylaştır. Görü Yapay Zekası; paket inceleme, ayıklama, araç takibi ve gerçek zamanlı depo güvenliği izlemeyi mümkün kılar.
Daha fazla bilgi edin
Real-time AI that works with your team

Perakendede AI

Perakendeyi Ultralytics YOLO modelleri ile yeniden hayal et. Görü Yapay Zekası; envanter takibi, raf izleme, sıra yönetimi ve daha akıllı müşteri içgörüleri sağlar.
Daha fazla bilgi edin
Real-time AI that works with your team

Sağlıkta Yapay Zeka

Ultralytics YOLO modelleriyle sağlık çözümleri oluştur. Sağlıkta görüntü tabanlı yapay zeka; daha hızlı tıbbi görüntülemeyi, daha akıllı teşhisleri ve hasta izlemeyi güçlendirir.
Daha fazla bilgi edin
Real-time AI that works with your team

Üretimde Yapay Zeka

Ultralytics YOLO modelleri ile üretimi optimize et. Görü Yapay Zekası; kalite kontrol, kusur tespiti, KKD uyumu ve montaj hattı otomasyonunu yönlendirir.
Daha fazla bilgi edin
Real-time AI that works with your operation

Otomotivde yapay zeka

Ultralytics YOLO modelleriyle otomotivde bilgisayarlı görü uygula. Görüntü tabanlı yapay zeka; yol güvenliğini, sürücü yardımını ve araç otomasyonunu daha akıllı yollar için geliştirir.
Daha fazla bilgi edin
Real-time AI tailored to your operation

Tarımda yapay zeka

Ultralytics YOLO modelleriyle akıllı tarıma görüntü tabanlı yapay zeka getir. Daha yüksek ve akıllı verimler için mahsul takibini, hayvancılık izlemeyi ve hassas tarımı güçlendir.
Daha fazla bilgi edin
Real-time AI that works with your team

Robotikte AI

Daha akıllı makineleri Ultralytics YOLO modelleriyle destekle. Robotikteki Vision AI; otonom navigasyonu, algılamayı, nesne takibini ve gerçek zamanlı kontrolü yönlendirir.
Daha fazla bilgi edin
Real-time AI that works with your team

Lojistikte Yapay Zeka

Ultralytics YOLO modelleri ile lojistiği kolaylaştır. Görü Yapay Zekası; paket inceleme, ayıklama, araç takibi ve gerçek zamanlı depo güvenliği izlemeyi mümkün kılar.
Daha fazla bilgi edin
Real-time AI that works with your team

Perakendede AI

Perakendeyi Ultralytics YOLO modelleri ile yeniden hayal et. Görü Yapay Zekası; envanter takibi, raf izleme, sıra yönetimi ve daha akıllı müşteri içgörüleri sağlar.
Daha fazla bilgi edin
Real-time AI that works with your team

Sağlıkta Yapay Zeka

Ultralytics YOLO modelleriyle sağlık çözümleri oluştur. Sağlıkta görüntü tabanlı yapay zeka; daha hızlı tıbbi görüntülemeyi, daha akıllı teşhisleri ve hasta izlemeyi güçlendirir.
Daha fazla bilgi edin
Real-time AI that works with your team

Üretimde Yapay Zeka

Ultralytics YOLO modelleri ile üretimi optimize et. Görü Yapay Zekası; kalite kontrol, kusur tespiti, KKD uyumu ve montaj hattı otomasyonunu yönlendirir.
Daha fazla bilgi edin
Real-time AI that works with your operation

Otomotivde yapay zeka

Ultralytics YOLO modelleriyle otomotivde bilgisayarlı görü uygula. Görüntü tabanlı yapay zeka; yol güvenliğini, sürücü yardımını ve araç otomasyonunu daha akıllı yollar için geliştirir.
Daha fazla bilgi edin
Real-time AI tailored to your operation

Tarımda yapay zeka

Ultralytics YOLO modelleriyle akıllı tarıma görüntü tabanlı yapay zeka getir. Daha yüksek ve akıllı verimler için mahsul takibini, hayvancılık izlemeyi ve hassas tarımı güçlendir.
Daha fazla bilgi edin

Yapay zekanın geleceğini birlikte inşa edelim!

Yolculuğuna makine öğreniminin geleceğiyle başla