Emulare CMUcam2#

CMUcam2 are următoarele capacități:

  • Urmărește blob-uri de culoare definite de utilizator la până la 50 de cadre pe secundă (rata de cadre depinde de setările de rezoluție și de dimensiunea ferestrei)

  • Urmărește mișcarea folosind diferențierea cadrelor la 26 de cadre pe secundă

  • Găsiți centroidul oricăror date de urmărire

  • Colectează date despre culoarea medie și varianță

  • Colectează o histogramă cu 28 de intervale a fiecărui canal de culoare

  • Procesează imagini filtrate pe margini orizontale (nesuportat)

  • Transferă un bitmap binar în timp real al pixelilor urmăriți dintr-o imagine

  • Ferestruire arbitrară a imaginii

  • Subeșantionarea imaginii

  • Ajustați proprietățile imaginii camerei

  • Descarcă o imagine brută (unul sau mai multe canale)

  • Rezoluție de până la 176 x 255

  • Suportă rate de baud de: 115.200 57.600 38.400 19.200 9.600 4.800 2.400 1.200 BPS

  • Controlați 5 ieșiri de servo

  • Mod de procesare de imagine paralelă secundar de la o singură magistrală de cameră (nesuportat)

  • Utilizează automat servourile pentru a face urmărirea culorii pe două axe

  • Ieșire video analogică alb-negru (PAL sau NTSC, în funcție de modulul camerei utilizat)

  • Personalizare flexibilă a pachetelor de ieșire

  • Mod de oprire a alimentării

  • Procesare de imagine cu treceri multiple pe o imagine memorată în buffer

Imagini de emulare CMUcam2 precompilate#

Compiled Firmware Image

Există mai multe diferențe între emularea CMUcam2 și CMUcam2 real. Mai jos este o listă a întregii funcționalități CMUcam2 cu funcțiile nesuportate tăiate. Multe funcții tăiate vor fi suportate în viitorul apropiat.

BM Mod buffer
CR Registru cameră
CP Alimentare cameră
DC Canal de diferență
DS Subeșantionare
FD Diferență de cadru
FS Flux de cadre (adăugat r553)
GB Obținere buton
GH Obținere histogramă
GI Obținere intrări Aux IO
GM Obținere medie
GS Obținere poziții servouri
GT Obținere parametri de urmărire
GV Obținere versiune
GW Obținere fereastră
HC Configurare histogramă
HD Diferență de rezoluție înaltă
HR Mod de rezoluție înaltă
HT Setare urmărire histogramă (nesuportat)
L0 Control LED
LF Încărcare cadru pentru diferențiere
LM Mod de linie
MD Diferență de mască (nesuportat)
NF Filtru de zgomot
OM Mască de pachet de ieșire
PD Diferență de pixeli (nesuportat)
PF Filtru de pachete
PM Mod de interogare
RF Citire cadru în buffer
RM Mod brut
RS Resetare
SF Trimitere cadru
SM Mască de servo
SO Ieșire servo
SP Parametri servo
ST Comandă de setare a urmăririi
SV Poziție servo
TC Urmărire culoare
TI Urmărire inversată
TW Fereastră de urmărire
UD Încarcă bufferul de diferență (nesuportat)
VW Fereastră virtuală

Următoarele comenzi nu vor fi suportate în viitorul apropiat:

CT Setare tip cameră
DM Mod de întârziere
L1 Control LED (priviți SO în schimb)
PS Sărire pachet
SD Repaus profund
SL Comandă de repaus

Diferențe de emulare CMUcam2#

  • Interval de intrare a servoului

    • Servourile sunt acum valori pe 8 biți 0-255

  • Jumperi

    • Din cauza lipsei jumperilor pe CMUcam3, modificările ratei de baud și ale direcției servoului trebuie efectuate la momentul compilării - acestea sunt controlate de #defines din partea de sus a codului sursă cmucam.c

  • Comanda Set Input (SI pin )

    • Setează pin-ul să fie o intrare

  • Comanda Software Color Space (CS value )

    • CS 0 setează spațiul de culoare la valoarea implicită hardware (RGB sau YCrCb)

    • CS 1 face o conversie software la spațiul de culoare HSV

      • Conversia presupune că hardware-ul este setat pe RGB pentru rezultate corecte

      • Spațiul HSV este un spațiu de numere întregi în care toate valorile sunt scalate între 16 și 240

    • Notă: Acest lucru este disponibil doar în r504 și versiuni superioare

  • Set Output poate controla LED-urile albastru și portocaliu

    • Servourile 2 și 3 vor înceta să funcționeze

    • SO 2 1 -> Albastru aprins

    • SO 2 0 -> Albastru stins

    • SO 3 1 -> Portocaliu aprins

    • SO 3 0 -> Portocaliu stins

  • Fără mod secundar

    • Este posibil, dar în prezent nu îl suportăm

  • Mască de ieșire (OM)

    • Suportă doar pachete T și S (tip 0 și 1)

  • Mod de linie (LM)

    • Suportă doar modul de urmărire a culorii (LM 0 1)

    • Statistici de urmărire a culorilor adăugate în r523 (LM 0 2)

  • Trimitere JPEG (SJ)

    • Trimite un cadru comprimat jpeg, antet și tot

  • Mod demonstrativ

    • Deoarece menținerea apăsată a butonului de programare pune CMUcam3 în modul de programare, trebuie să apăsați butonul la o jumătate de secundă după pornire pentru a intra în modul demonstrativ

  • Diferență de cadru la rezoluție înaltă

    • Acest lucru funcționează acum la fel ca diferențierea cadrelor la rezoluție joasă, doar la o rezoluție mai înaltă