CMUcam3 Frame Grabber#
The CMUcam3 Frame Grabber is a simple utility that can be used to test your CMUcam3. Its primary purpose is to act as a terminal program similar to HyperTerminal or Minicom. It also allows you to view jpeg images returned from the camera. You need run the CMUcam2 Emulation firmware on the camera to use this program. The Frame Grabber requires that you install .NET version 2.0 or later which can be found on our software page. Unfortunately, the CMUcam3 Frame Grabber only works in Windows. The source can be found in the tools directory (called cc3_image_viewer). For Linux or Mac, please try using the CMUcam2GUI.
Uygulamayı başlatmak için:
CMUcam3 Frame Grabber üzerine çift tıklayın
“Available COM Ports” açılır menüsünden doğru COM portunu seçin
“Connect” düğmesine tıklayın
CMUcam2 Öykünme Donanım Yazılımını çalıştıran CMUcam3’ünüzü açın (zaten açıksa yeniden başlatın)
“Terminal Console” penceresinde metin belirdiğini görmelisiniz
Bir resim çekmek için “Grab Image”e basın
Arayüzün “Main” sekmesindeki alanların bir açıklaması aşağıdadır:
Kullanılabilir COM Portları
Bu, Windows’un tanıdığı seri portların bir listesini gösterir
Baud Hızı
Bu, bu programı bir terminal istemcisi olarak kullanmak isterseniz baud hızını değiştirmenize olanak tanır
Zaman Aşımı
Bu, programın bekliyor olabileceği herhangi bir seri yanıt için zaman aşımını ayarlar
Bunun genellikle değiştirilmesi gerekmez
Bağlan
Bir seri bağlantı açar
Bağlantıyı Kes
Seri bağlantıyı kapatır
Gönder
Bu düğme, düğmenin solunda bulunan metin kutusuna yazdığınız herhangi bir metni iletecektir
Metin kutusu otomatik olarak bir return karakteri ekler, bu nedenle yalnızca “Send”e tıklamak CMUcam2’den bir ACK yanıtı almanızı sağlamalıdır
Varsayılan olarak odak giriş metin kutusundadır, bu yüzden sadece yazıp veri göndermek için return tuşuna basabilirsiniz
CIF / QCIF
Bu düğmeler, görüntülenen görüntünün çözünürlüğünü ayarlar
Varsayılan olarak CMUcam3, tam pencereyi dolduracak şekilde ölçeklendirilmiş düşük çözünürlüklü bir görüntü gönderir
Görüntü Yakala
Bu, CMUcam3’e “SJ” (Send JPEG) komutunu gönderir ve sonucu görüntüler
Döngü
Bu onay kutusu, istemcinin her “Refresh Interval” milisaniyede bir otomatik olarak “Grab Frame”e basmasına neden olur
CMUcam3 belirtilen sürede bir görüntü üretemezse, program bir hatayla zaman aşımına uğrayacaktır
Bu olursa, Yenileme Aralığını artırın veya görüntü çözünürlüğünü azaltın
Yenileme Aralığı
Bu parametre, “Loop” işaretlendiğinde “Grab Image” komutunun ne sıklıkta gönderileceğini ayarlar
Durdur
Bu, döngü halindeki görüntülerin yakalanmasını durdurur
“Settings” sekmesi, birkaç yaygın CMUcam3 özelliğini ayarlamanıza olanak tanır. Bastığınız her düğme, karşılık gelen CMUcam2 komutlarını seri port üzerinden iletmektir sadece.
Arayüzün “Setting” sekmesindeki alanların bir açıklaması aşağıdadır:
Düşük Çözünürlük / Yüksek Çözünürlük
Bu düğmeler Yüksek Çözünürlüklü CIF (352x288) veya Düşük Çözünürlüklü QCIF (176x144) arasında geçiş yapar
Bu, “HR 1” ve “HR 0” seri komutlarına karşılık gelir
RGB / YCrCb
Bu, kameranın yerel piksel modunu RGB veya YCrCb olarak seçer
Bu, “CR 18 44” veya “CR 18 36” CMUcam2 komutlarına karşılık gelir
Alt Örnekle
Bu, donanım yazılımı tabanlı alt örnekleme miktarını ayarlar
Bu, X ve Y’nin her seçim kutusunda ayarlanan değerler olduğu “DS X Y”ye karşılık gelir
Pencere
Bu, kamera için sanal pencere parametrelerini ayarlar
Bu, “VW x0 y0 x1 y1” CMUcam2 komutuna karşılık gelir
Servo Denetleyici
Bu, 4 CMUcam3 servo portunun servo konumunu ayarlamanıza olanak tanır
Bu, CMUcam3’e bağlı herhangi bir servonun hareket etmesine neden olur
Bu, “SV” CMUcam2 komutuna karşılık gelir
You can send any CMUcam2 command using the “Send” button and the text input box. For example, sending “GM” (Get Mean) returns the mean color of the image. To stop the streaming, simply click “Send” or press return. This program does not visualize most of the CMUcam2 commands. For visualization try using the CMUcam2GUI java program.
Sorun Giderme#
Bir döngüde görüntü yakalarken özellikleri değiştirdiğimde kamera neden donuyor?
Maalesef, CMUcam3 Frame Grabber ne yaptığınızı gerçekten takip edecek kadar akıllı değildir. Bu yüzden görüntüleri döngü halinde alıyorsanız ve çözünürlüğü daha büyük bir şeye değiştirirseniz, yüksek çözünürlüklü görüntünün aktarımı bitmeden önce bir sonraki “Grab Frame” komutunu gönderebilir. Bu birkaç kez olduktan sonra, Frame Grabber kamerayla senkronizasyonu kaybeder ve seri zaman aşımına uğrar. Tipik olarak parametreleri değiştirmeden önce “Stop”a basarsanız ve yüksek çözünürlüklü görüntüler için “Refresh Interval”ı daha büyük bir değere ayarladığınızdan emin olursanız, iletişim veya zaman aşımı hataları almazsınız.
Neden yüksek çözünürlüklü görüntülerle döngü yapamıyorum?
Bu, önceki soruda açıklanan sorunla aynıdır. “Refresh Interval” çok küçükse, kamera görüntüleri üretebileceğinden daha hızlı isteyecektir.