Görüntü Tanıma
- FİGES AŞ
- MATLAB & SIMULINK
- Probleminizi Nasıl Çözeceğinizi Keşfedin
- Görüntü Tanıma
Görüntü Tanıma Nedir?
Bilmeniz Gereken 3 Şey
Görüntü tanıma, bir görüntü veya videodaki bir nesneyi veya özelliği tanımlama sürecidir. Kusur tespiti, tıbbi görüntüleme ve güvenlik gözetimi gibi birçok uygulamada kullanılır.
Neden Önemlidir ?
Nasıl Çalışır?
MATLAB ile Görüntü Tanıma
Görüntü Tanıma Neden Önemlidir?
Görüntü tanıma, sıkıcı görevleri hızlandırabilir ve görüntüleri manuel görüntü incelemesinden daha hızlı veya daha doğru bir şekilde işleyebilir. Görüntü tanıma, birçok uygulamada önemli bir tekniktir ve aşağıdakiler gibi derin öğrenme uygulamalarında ana itici güçtür:
Görsel Muayene : Üretimde arızalı veya arızasız parçaların belirlenmesi, montaj hattındaki binlerce parçanın hızlı bir şekilde incelenmesini sağlayabilir.
Görüntü Sınıflandırması : Görüntüleri görüntü içeriğine göre kategorilere ayırma. Bu özellikle e-ticarette görüntü alma ve öneri sistemleri gibi uygulamalarda faydalıdır.
Otonom Sürüş : Bir görüntüdeki dur işaretini veya yayayı tanıma yeteneği,otonom sürüş uygulamaları için hayati öneme sahiptir.
Robotik : Görüntü tanıma, robotlar tarafından nesneleri tanımlamak ve yollarındaki konumları veya nesneleri belirleyerek otonom navigasyonu geliştirmek için kullanılabilir.
Parça kusurları için görsel muayene uygulamasında görüntü tanıma.
Görüntü tanıma, bu uygulamaların merkezindeki temel teknolojidir.
Görüntülerdeki nesneleri veya sahneleri tanımlar ve bu bilgileri daha büyük bir sistemin parçası olarak kararlar almak için kullanır. Görüntü tanıma, bu sistemlerin daha bilinçli hale gelmesine yardımcı oluyor ve esasen sisteme içgörü sağlayarak daha iyi kararlar alınmasını sağlıyor.
Görüntü Tanıma ve Nesne Algılama
Görüntü tanıma ve nesne algılama benzer tekniklerdir ve genellikle birlikte kullanılırlar. Görüntü tanıma, bir görüntüde hangi nesnenin veya sahnenin olduğunu belirler; nesne algılama, görüntülerde bu nesnelerin örneklerini ve konumlarını bulur.
Yaygın nesne algılama teknikleri Faster R-CNN ve YOLOv3’tür.
Görüntü tanıma (sol) ve nesne algılama (sağ).
Derin Öğrenmeyi Kullanarak Nesne Algılamaya Başlarken
Nasıl Çalışır?
Görüntü Tanıma Teknikleri
Görüntü tanıma için makine öğrenimi ve derin öğrenme teknikleri de dahil olmak üzere birçok yöntem vardır. Kullandığınız teknik uygulamaya bağlıdır ancak genel olarak, sorun ne kadar karmaşıksa derin öğrenme tekniklerini keşfetme olasılığınız o kadar artar.
Derin Öğrenme Kullanarak Görüntü Tanıma
Görüntü tanıma için derin öğrenme yaklaşımı , örnek görüntülerden ilgili özellikleri otomatik olarak öğrenmek ve yeni görüntülerdeki bu özellikleri otomatik olarak tanımlamak için evrişimli bir sinir ağının kullanımını içerebilir .
Görüntü tanıma için tipik bir derin öğrenme iş akışı:
Eğitim Verilerini Hazırlayın : Bir görüntü koleksiyonuyla başlayın ve bunları ilişkili kategorilerine derleyin. Bu, daha doğru bir model için görüntüleri daha tutarlı hale getirmek için herhangi bir ön işleme adımını da içerebilir.
Derin Öğrenme Modeli Oluşturun: Sıfırdan bir derin öğrenme modeli oluşturabilmenize rağmen,uygulamanız için başlangıç noktası olarak kullanabileceğiniz önceden eğitilmiş bir modelle başlamak en iyisi olabilir. ( Önceden eğitilmiş modeller hakkında daha fazla bilgi edinin ).
Modeli Eğitin: Model eğitimi, test verilerinin modele sunulmasını içerir. Model daha sonra veriler üzerinde birden fazla kez yineleme yapar ve görüntülerle ilgili en önemli özellikleri otomatik olarak öğrenir. Eğitim devam ettikçe, model eğitim setindeki görüntü sınıfları arasında doğru bir şekilde ayrım yapabilene kadar model tarafından daha karmaşık özellikler öğrenilecektir.
Test Verileri: Modelin daha önce görmediği yeni veriler üzerinde test yaparak modelin görüntünün ne olduğuna inandığını görün. Sonuçlar beklediğiniz gibi değilse, doğruluk daha kabul edilebilir olana kadar bu dört adımı yineleyin. Derin öğrenme teknikleri kulağa karmaşık gelebilir, ancak basit örnekler başlamak ve teknoloji hakkında daha fazla bilgi edinmek için harika bir yoldur.
Derin Öğrenmeye Giriş: Derin Öğrenme Nedir? (3:33)
MATLAB ile Derin Öğrenmeyi Tanıtıyoruz
Derin Öğrenme: 11 Satırlık MATLAB Kodunda Derin Öğrenme (2:38)
Basit Görüntü Sınıflandırma Ağı Oluşturun
İpucu: Derin öğrenme teknikleri, son derece doğru ve sağlam sonuçlar sağladıkları için görüntü tanıma için popülerdir. Derin öğrenme, büyük miktarda eğitim verisiyle en iyi şekilde çalışır ve transfer öğrenme gibi teknikler görüntü tanıma iş akışını basitleştirebilir. Deep Learning Toolbox™, algoritmalar, önceden eğitilmiş modeller ve uygulamalarla derin sinir ağlarını tasarlamak ve uygulamak için bir çerçeve sağlar.
Makine Öğrenmesini Kullanarak Görüntü Tanıma
Görüntü tanımaya yönelik makine öğrenimi yaklaşımı, görüntülerden temel özelliklerin belirlenip çıkarılmasını ve bunların bir makine öğrenimi modeline girdi olarak kullanılmasını içerir.
Veriyi Eğitin : Bir dizi resimle başlayın ve bunları ilişkili kategorilere derleyin.
Özellikleri Çıkarın : Her görüntüdeki ilgili özellikleri seçin. Bir özellik çıkarma algoritması, verilerinizdeki sınıflar arasında ayrım yapmak için kullanılabilecek kenar veya köşe özelliklerini çıkarabilir.
Makine Öğrenmesi Modeli Oluşturun : Bu özellikler, bu özellikleri farklı kategorilere ayıracak ve daha sonra yeni nesneleri analiz ederken ve sınıflandırırken bu bilgileri kullanacak bir makine öğrenmesi modeline eklenir.
Görüntü tanıma için makine öğrenimi iş akışı.
Doğru bir nesne tanıma modeli oluşturmak için birçok kombinasyon sunan çeşitli makine öğrenimi algoritmalarını ve özellik çıkarma yöntemlerini kullanabilirsiniz.
HOG özelliklerini ve bir SVM sınıflandırıcısını kullanarak rakamları sınıflandırmak için görüntü tanıma özelliğine sahip makine öğrenimi örneği
İpucu: Nesne tanıma için makine öğrenimini kullanmak, öğrenme için en iyi özellik ve sınınandırıcı kombinasyonunu seçme esnekliği sunar. Minimum veriyle doğru sonuçlar elde edilebilir. İstatistikler ve Makine Öğrenmesi Araç Kutusu™, verileri tanımlamak, analiz etmek ve modellemek için işlevler ve uygulamalar sağlar.
Görüntü Tanıma: Derin Öğrenme ve Makine Öğrenmesi
Görüntü tanıma için derin öğrenmeyi veya makine öğrenimini ne zaman kullanacağınızı nasıl anlarsınız? Yüksek düzeyde, fark makine öğrenimiyle özellikleri manuel olarak seçmek veya derin öğrenmeyle bunları otomatik olarak öğrenmektir.
Derin Öğrenme ve Geleneksel Makine Öğrenmesi: Doğru Yaklaşımı Seçmek
Makine Öğrenmesi ve Derin Öğrenme | Derin Öğrenmeye Giriş (3:47)
Geleneksel Görüntü İşleme Tekniklerini Kullanarak Görüntü Tanıma
Derin öğrenme ve makine öğrenmesinin yanı sıra, birçok klasik görüntü işleme yöntemi bazı uygulamalar için görüntü tanımada oldukça etkilidir. Görüntü işleme teknikleri, aşağıdakiler gibi “piksel tabanlı” tanıma uygulamalarına oldukça uygundur:
Renk tabanlı görüntü tanıma: Genellikle renk, görüntü tanıma için mükemmel bir özellik sağlayabilir. Ton, doygunluk ve değer (HSV) veya kırmızı, yeşil, mavi (RGB) gibi özellikler bir görüntüye dair fikir verebilir.
Şablon eşleştirme : Bu teknik, daha büyük bir görüntüdeki eşleşen bölgeleri bulmak için küçük bir görüntü veya şablon kullanır.
Görüntü segmentasyonu ve leke analizi: Bu, boyut, renk veya şekil gibi basit nesne özelliklerini kullanır.
İpucu: Genellikle, bir nesne görüntü segmentasyonu gibi basit bir yaklaşım kullanılarak tanınabiliyorsa, bu yaklaşımı kullanarak başlamak en iyisidir.
Yüzlerce veya binlerce eğitim görüntüsü veya karmaşık bir çözüm gerektirmeyen sağlam bir çözümünüz olabilir. Image Processing Toolbox™ ihtiyacınız olan tüm araçlara sahip olabilir.
MATLAB ile Görüntü Tanıma
MATLAB ® görüntü tanıma işleminin zor kısımlarını basitleştirir.
- Görüntü etiketleme uygulamaları : Temiz, önceden işlenmiş veriler, görüntü tanımada en iyi başarı fırsatını sağlar. Image Labeler uygulamasıyla , görüntüleri kırpma ve etiketleme sürecini otomatikleştirebilirsiniz.
Resimleri ve videoları etkileşimli olarak etiketleyin.
- Derin öğrenme ve makine öğrenme algoritmalarını keşfetme : İlk başladığınızda, derin öğrenme veya makine öğrenme tekniklerinin kullanılıp kullanılmayacağı belirsiz olabilir. MATLAB, tüm yaklaşım kombinasyonlarını deneme olanağı sunar. Derin öğrenme veya makine öğrenme sınıflandırma algoritmaları için önceden eğitilmiş modelleri keşfedin.
ONNX™ (Açık Sinir Ağı Değişimi) içe ve dışa aktarma yeteneklerini kullanarak TensorFlow™, Keras, PyTorch ve Caffe2 gibi çerçevelerden gelen ağlar ve ağ mimarileriyle etkileşim kurabilirsiniz.
Python tabanlı çerçevelerle entegre edin.
- Dağıtım için otomatik kod üretimi : Sonuç olarak, algoritmanızın masaüstü ortamının dışında yaşaması gerekebilir. MATLAB, görüntü tanıma algoritmanızı her yere dağıtmak için kod üretme araçları sağlar: web, gömülü donanım veya üretim sunucuları.
Algoritmalarınızı oluşturduktan sonra, GPU Coder™ ile donanım-döngü testi için TensorRT veya CUDA ® kodu oluşturmak için otomatik iş akışlarını kullanabilirsiniz. Oluşturulan kod mevcut projelerle entegre edilebilir ve masaüstü GPU’larında veya NVIDIA ® Jetson veya NVIDIA Drive platformu gibi gömülü GPU’larda nesne algılama algoritmalarını doğrulamak için kullanılabilir.
Ayrıca bakınız: Desen tanıma
Görüntü Tanıma Hakkında Daha Fazla Bilgi Edinin
Dokümanlarda derin öğrenme örneklerine göz atın.
Makine Öğrenmesini Kullanarak Görüntü Tanıma
Etkileşimli olarak doğru bir sınıflandırıcının nasıl oluşturulacağına ilişkin adım adım talimatlar için bu videoyu izleyin.
Özelleştirilmiş Özellikler Paketi Kullanılarak Görüntü Alma
Bu örnek, özelleştirilmiş bir özellik paketi iş akışı kullanılarak bir CBIR sisteminin nasıl oluşturulacağını göstermektedir.
Görsel Sözcükler Çantası ile Görüntü Sınıflandırması
Görsel kelimelerden oluşan bir çanta oluşturarak, görüntü kategorisi sınıflandırması için Computer Vision Toolbox™ işlevlerini nasıl kullanacağınızı öğrenin.
Bilgisayarlı görünün ne olduğunu, nasıl çalıştığını, neden önemli olduğunu ve bilgisayarlı görüş için MATLAB’ın nasıl kullanılacağını keşfedin.