TensorFlow bir dizi bilgisayarlı görüntü (CV) ve görüntü sınıflandırma aracı sağlar. Bu belgede bu araçlardan bazıları tanıtılmakta ve yaygın CV görevlerine başlamanıza yardımcı olacak kaynaklara genel bir bakış sunulmaktadır.
Görme kitaplıkları ve araçları
TensorFlow, üst düzey Keras kitaplıkları ve alt düzey tf.image
modülü aracılığıyla CV araçları sağlar. Çoğu kullanım durumunda Keras kitaplıkları yerleşik TensorFlow alternatiflerinden daha kullanışlı olacaktır. Ancak Keras seçenekleri kullanım durumunuza uymuyorsa veya görüntü ön işleme üzerinde daha düşük düzeyde kontrol istiyorsanız, daha düşük düzeydeki TensorFlow araçlarına ihtiyacınız olabilir.
KerasCV
Bir CV projesine yeni başlıyorsanız ve hangi kütüphanelere ve araçlara ihtiyacınız olacağından emin değilseniz KerasCV başlamak için iyi bir yerdir. KerasCV, Keras Core üzerine kurulu modüler CV bileşenlerinden oluşan bir kütüphanedir. KerasCV, CV görevleri için üst düzey Keras API'sini genişleten modelleri, katmanları, ölçümleri, geri aramaları ve diğer araçları içerir. KerasCV API'leri veri artırma, sınıflandırma, nesne algılama, segmentasyon, görüntü oluşturma ve diğer yaygın CV iş akışlarında yardımcı olabilir. Üretim düzeyinde, son teknoloji ürünü eğitim ve çıkarım hatlarını hızlı bir şekilde bir araya getirmek için KerasCV'yi kullanabilirsiniz.
Keras yardımcı programları
tf.keras.utils
çeşitli üst düzey görüntü ön işleme yardımcı programları sağlar. Örneğin, tf.keras.utils.image_dataset_from_directory
diskteki görüntüler dizininden bir tf.data.Dataset
oluşturur.
tf.image
KerasCV kullanım durumunuza uymuyorsa, kendi veri artırma ardışık düzenlerinizi veya katmanlarınızı yazmak için tf.image
ve tf.data
kullanabilirsiniz.
tf.image
modülü, görüntü işleme için tf.image.flip_left_right
, tf.image.rgb_to_grayscale
, tf.image.adjust_brightness
, tf.image.central_crop
ve tf.image.stateless_random*
gibi çeşitli işlevler içerir.
tf.data
API'si basit, yeniden kullanılabilir parçalardan karmaşık giriş hatları oluşturmanıza olanak tanır.
TensorFlow Veri Kümeleri
TensorFlow Veri Kümeleri, TensorFlow ile kullanıma hazır bir veri kümeleri koleksiyonudur. Veri kümelerinin çoğu (örneğin, MNIST , Fashion-MNIST ve TF Flowers ), bilgisayarlı görme algoritmalarını geliştirmek ve test etmek için kullanılabilir.
Nereden başlamalı
Aşağıdaki kaynaklar TensorFlow ve Keras CV araçlarını kullanmaya başlamanıza yardımcı olacaktır.
- KerasCV : KerasCV için belgeler ve kaynaklar.
- KerasCV geliştirici kılavuzları : KerasCV kullanarak ortak CV görevlerini gerçekleştirmeye yönelik kılavuzlar. KerasCV'de yeniyseniz KerasCV ile Sınıflandırma başlamak için iyi bir yerdir.
TensorFlow eğitimleri : Temel TensorFlow belgeleri (bu kılavuz) bir dizi CV ve görüntü işleme eğitimini içerir.
- Temel sınıflandırma: Kıyafet resimlerini sınıflandırın : Spor ayakkabı ve gömlek gibi kıyafet resimlerini sınıflandırmak için bir sinir ağı modeli eğitin.
Görüntüleri yükleme ve ön işleme : Bir görüntü veri kümesini üç şekilde yükleyin ve ön işleme tabi tutun:
- Diskteki görüntülerin dizinini okumak için üst düzey Keras ön işleme yardımcı programlarını kullanın.
-
tf.data
kullanarak kendi giriş hattınızı sıfırdan yazın. - TensorFlow Veri Kümelerinde bulunan geniş katalogdan bir veri kümesi indirin.
Video verilerini yükleyin : UCF101 insan eylemi veri kümesini kullanarak AVI video verilerini yükleyin ve önişleyin.
Evrişimli Sinir Ağı (CNN) : Keras API'sini kullanarak CIFAR görüntülerini sınıflandırmak için basit bir Evrişimli Sinir Ağı (CNN) eğitin.
Görüntü sınıflandırması :
tf.keras.Sequential
modelini kullanarak çiçek görüntülerini sınıflandırın vetf.keras.utils.image_dataset_from_directory
kullanarak verileri yükleyin.Transfer öğrenimi ve ince ayar : Önceden eğitilmiş bir ağdan transfer öğrenimini kullanarak kedi ve köpeklerin görüntülerini sınıflandırın.
Veri artırma : Görüntü döndürme gibi rastgele (ama gerçekçi) dönüşümler uygulayarak eğitim setinizin çeşitliliğini artırın.
Görüntü segmentasyonu : Değiştirilmiş bir U-Net kullanarak görüntü segmentasyonunu gerçekleştirin.
3B evrişimli sinir ağıyla video sınıflandırması : UCF101 eylem tanıma veri kümesini kullanarak video sınıflandırması için bir 3B evrişimli sinir ağını (CNN) eğitin.
MoViNet ile video sınıflandırması için öğrenimi aktarın : Bir eylem tanıma görevi için videoları sınıflandırmak üzere önceden eğitilmiş bir MoViNet modeli ve UCF101 veri kümesini kullanın.