Arduino’da Makine Öğrenimi ile Renk Tanımlama

Arduino'da Makine Öğrenimi ile Renk Tanımlama

Bu Arduno Makine öğrenimi projesinde nesnelerde renk tanımlamak için bir RGB sensörü kullanacağız.
Bu, Tensorflow blogunda bulunan projenin bir versiyonudur. Bu eğitimde çok daha az güçlü bir çip kullanacağız, 32 kb flaş ve sadece 2 kb RAM ile donatılmış bir Arduino Nano (eski nesil).

Özellikler Tanımı

Hangi nesneye işaret ettiğimizi anlamak için bir renk sensörünün(TCS3200) RGB bileşenlerini kullanacağız. Bu, özelliklerimizin 3 boyutlu olacağı anlamına gelir, bu da çok yüksek doğrulukta gerçekten basit bir modele yol açar.

Örnek Verileri Kaydetmek

Sensör okumalarından özellik vektörüne ulaşmak için herhangi bir işleme ihtiyacımız yok, bu nedenle kod basit olacaktır: sensörden her bileşeni okuyun ve onu özellikler dizisine atayın. Bu kısım, sahip olduğunuz belirli çipe göre değişecektir.

Seri monitörü açın ve sensörün önüne bazı renkli nesneler koyun: nesneyi biraz hareket ettirin ve döndürün, böylece örnekler farklı renk tonları içerecektir.

Her renk için kayıtları, rengin adını taşıyan bir dosyaya kaydedin, böylece daha sonra anlamlı sonuçlar elde edersiniz.

“Boş rengi” de denemeyi unutmayın: sensörün önüne hiçbir şey koymayın ve bir süre kayıt yapmasına izin verin.

Sorunsuz bir kurulum yaparsanız, aşağıdaki kontur grafiğinde gösterildiği gibi ayırt edici özelliklerle bitirmelisiniz.

Renk Tanımlama
Renk Tanımlama

Renk Tanımlama Sınıflandırıcıyı Eğitip, Dışa Aktarmak

Ayrıntılı bir kılavuz için bu öğreticiye bakın.

Bu noktada, yazdırılan kodu kopyalamanız ve Arduino projenize mode.hl adlı bir dosyaya aktarmanız gerekir.

Renk Tanımlama Proje Kodu

Sensörün önüne renkli bir nesne koyun ve seri monitöre yazdırılan tanımlanan nesne adını görün.

“Boş rengi” hatırlıyor musunuz? Kaydedilmesi bu yüzden gerekiyor, böylece hiçbir nesne olmadığında “boş” bir değer olacaksınız, aksi takdirde beklenmedik tahminler alacaksınız

Görevin basitliği göz önüne alındığında, farklı renkler için kolayca% 100’e yakın doğruluk elde etmelisiniz (kötü aydınlatma nedeniyle turuncuyu sarıdan ayırt etmekte bazı sıkıntılar olabilir). Hem eğitim hem de sınıflandırma sırasında aynı kurulumu çoğalttığınızdan emin olun.

İşte bu: makine öğrenimini 2 Kb’de çalıştırdınız!

Arduino Nano’yu (eski nesil) hedefleyen proje 5570 bayt (% 18) program alanı ve 266 bayt (% 12) RAM gerektiriyor. Bu, makine öğrenimini Arduino Nano’nun sağladığından daha az alanda çalıştırabileceğiniz anlamına gelir.

Yorum yapma özelliği, forum tarafından gelen istek sebebiyle kapatılmıştır. Lütfen tartışmalar ve sorularınız için topluluk forumumuza katılın.