În prelucrarea imaginilor, ce este timpul real? (Programare, Procesarea Imaginilor, Timp Real)

HaggarTheHorrible a intrebat.
a intrebat.

în aplicațiile de procesare a imaginilor, ce este considerat timp real? Este 33 fps timp real? Este 20 fps timp real? Dacă 33 și 20 fps sunt considerate timp real, atunci și 1 sau 2 fps este timp real?

Poate cineva să arunce puțină lumină.

Comentarii

  • Așa este, Joe. Am o platformă de procesare încorporată conectată la o cameră, iar algoritmul meu poate procesa doar ~1 fps, deci, pot considera acest lucru ca fiind în timp real? –  > Por HaggarTheHorrible.
  • În grafica pe calculator >20 fps poate fi considerat ca fiind timp real, deoarece începe să pară fluent. La >5 fps este adesea numit interactiv (ca în programele CAD), așa că la 1-2 fps cred că se poate numi și așa. –  > Por Corbie.
11 răspunsuri
Martin B

Din experiența mea, este un termen destul de vag. Adesea, ceea ce se vrea să se înțeleagă este că algoritmul va rula la frecvența sursei (de exemplu, o cameră) care furnizează imaginile; totuși, aș prefera să se precizeze acest lucru în mod explicit („algoritmul poate procesa imagini la frecvența de cadre a camerei”).

honibis

Prelucrarea imaginilor în timp real = a produce ieșirea simultan cu intrarea.

Intrarea poate fi de 25 fps, dar puteți alege să procesați 1 din fiecare 5 cadre (ceea ce face o procesare de 5 fps) și aplicația dumneavoastră este tot în timp real.

Software de streaming TV: toate cadrele sunt procesate.

Aplicație de securitate, iar intrarea este reprezentată de camere de securitate CCTV: puteți alege să săriți unele cadre pentru a vă adapta la performanță.

joc 3d sau simulare: fps-ul se schimbă în funcție de scena curentă.

Și toate sunt în timp real.

utilizator82238

Strict vorbind, aș spune că în timp real înseamnă că aplicația generează imagini pe baza datelor introduse de utilizator pe măsură ce acestea apar, de exemplu, o mișcare a mouse-ului care schimbă orientarea unui avatar.

Cum reușită este în această sarcină – 1 fps, 10 fps, 100 fps, etc. – este de fapt o altă întrebare.

Timpul real descrie un abordare, nu o măsură de performanță.

Totuși, dacă întrebați care este cel mai lent fps care poate fi considerat utilizabil de către un om, răspunsul este aproximativ 15, cred.

neopolaritate

cred că depinde de ceea ce este aplicația în timp real. Dacă aplicația afișează slideshow-uri cu 1 imagine la fiecare 3 secunde, iar aplicația poate procesa 1 imagine în aceste 3 secunde și să o afișeze, atunci este procesare în timp real.

Dacă filmul are 29,97 de cadre pe secundă, iar aplicația poate procesa toate cele 29,97 de cadre în decurs de o secundă, atunci este, de asemenea, timp real.

De exemplu, dacă o aplicație poate prelua filmul de la o casetă video sau de la ieșirea analogică a cablului și îl poate comprima în 29,97 cadre pe secundă și, de asemenea, poate trimite toate aceste informații într-o zonă îndepărtată pentru ca o altă persoană să le poată viziona, atunci este vorba de procesare în timp real.

mouviciel

(Hard) Timpul real este atunci când un rezultat nu are nicio valoare atunci când este livrat prea devreme sau prea târziu.

Orice FPS este în timp real cu condiția ca cadrele afișate să reprezinte ceea ce ar trebui să fie afișat chiar în momentul în care sunt afișate.

Paul R

Noțiunea de afișare în timp real nu este cu adevărat legată de o anumită rată de cadre – ar putea fi definită ca fiind rata minimă a cadrelor la care mișcarea este percepută ca fiind continuă. Astfel, pentru obiectele care se mișcă lent într-un cadru vizual (de exemplu, navele dintr-un port sau stelele de pe cerul nopții), o rată de cadre relativ lentă ar putea fi suficientă, în timp ce pentru mișcări rapide (de exemplu, un simulator de mașini de curse) ar fi necesară o rată de cadre mult mai mare.

Există, de asemenea, un alt aspect secundar latența. Un afișaj în timp real trebuie să aibă o latență suficient de mică în raport cu alte evenimente (de exemplu, comportamentul unei simulări în timp real) pentru a nu exista un decalaj perceptibil în actualizările afișajului.

paxdiablo

De fapt, nu este o întrebare ușoară (chiar și fără a lua în considerare diferențele dintre indivizi).

Wikipedia are o articol bun care explică de ce. Dacă mai contează, cred că filmele de cinema rulează la 24fps, așa că, dacă ești mulțumit cu asta, asta e ceea ce aș considera eu timp real.

Goz

Depinde de ce anume încerci să faci. Pentru anumite scopuri, 1fps sau chiar 2 spf (secunde pe cadru) ar putea fi considerat timp real. Pentru altele asta e mult prea lent …

Acestea fiind spuse, timp real înseamnă că durează la fel de mult (sau mai puțin) să procesezi x cadre cât ar dura doar să prezinți acele x cadre.

baklarz2048

Depinde.

  • tun automat de avion – 1000 fps

  • monitorizare – 10 – 15 fps

  • autentificare – 1 fps

  • dispozitive medicale – 1 fps

Comentarii

  • Dispozitivele medicale nu produc 1 fph. Chiar și unele secvențe RMN produc până la două imagini pe secundă (de exemplu, bSSFP). –  > Por Corbie.
  • @Corbie Nu contează. Ceea ce contează este cât de repede trebuie să procesați imaginile, nu cât de repede le produce ceva. –  > Por baklarz2048.
  • În aplicațiile RMN intervenționale chiar ai nevoie de imagini medicale cât mai repede posibil. Nu vreți să înfigeți un ac într-un pacient și să așteptați o oră pentru o imagine pentru a ști dacă ați atins ținta. –  > Por Corbie.
  • @Corbie În acest caz este întotdeauna uman. În alte cazuri nu contează. –  > Por baklarz2048.
  • Întrebarea a fost „ce este timpul real”, astfel încât precizarea vitezei diferitelor modalități de imagistică nu răspunde la întrebare. Imagistica medicală în timp real este mult mai rapidă. –  > Por Corbie.
Niki

Cred că termenul este folosit cu sensuri diferite în contexte diferite. În procesarea industrială a imaginilor, procesarea în timp real este, de obicei, opusul procesării offline. În aplicațiile de procesare offline, înregistrezi imagini (multe dintre ele) și le prelucrezi ulterior. În procesarea în timp real, sistemul care achiziționează imaginile le și procesează, în același timp, astfel încât rata cadrelor de procesare nu trebuie să fie mai mare decât rata cadrelor de achiziție.

Martin Thompson

În timp real înseamnă că implementarea dvs. este suficient de rapidă pentru a respecta un anumit termen limită. Termenul limită face parte din specificațiile sistemului dumneavoastră. Dacă este vorba de o interfață interactivă și utilizatorii nu sunt prea pretențioși, o actualizare de 15 Hz poate fi OK, deși poate da senzația de întârziere. Dacă îl folosiți pentru a conduce o mașină pe autostradă, 30 Hz este un nivel corect. Dacă este vorba de o rachetă, atunci poate 100 Hz?