Ho per esempio l'immagine 4 * 4. Voglio estrarre le componenti Y, U e V separatamente. Come fare se l'immagine è YUV 422, YUV 420 e YUV444. Sono interessato a conoscere la struttura di array come Y, U e V sono memorizzati in 422.420 e 444, in modo che sia possibile accedervi.YUV 422, YUV 420, YUV 444
risposta
This sito offre una buona panoramica sui diversi formati YUV. C'è anche una struttura a pixel.
Per chiarimenti: questi numeri sono per la determinazione di color component subsampling. Ad esempio il sottocampionamento YUV 444 = 4: 4: 4, nel senso che ognuno dei tre componenti (Y, U e V) ha la stessa frequenza di campionamento. Mentre 4: 2: 2 afferma che U e V sono solo campionati con metà della velocità di Y. O, in altre parole, 2 Byte per Y e rispettivamente per U e V 1 Byte, se la profondità è 1 Byte. Ciò implica che Y può avere un intervallo dinamico più elevato.
Vale la pena notare che lo standard JPEG definisce i fattori di campionamento orizzontale e verticale per ciascun componente di colore. Il sistema visivo umano ha un 20:1 ratio of the luma sensors (rods) to chroma sensors (cones). Per questo motivo, il componente di luminosità in genere non è sottocampionamento, ma lo JPEG standard consente la codifica di tale contenuto.
è una domanda piuttosto vecchia, tuttavia ho appena finito di lavorare sulla decodifica YUV e vorrei condividere alcune informazioni. Esistono 3 aspetti principali dello schema YUV: 1 - se il buffer YUV di origine è un buffer compresso o planare. Confezionato significa che i bit YUV sono raggruppati insieme, planare significa che i buffer Y, U e V sono separati in 3 aree di memoria differenti. 2 - Dimensione canale YUV; il singolo canale Y, U, V potrebbe essere di 8 bit, 10 bit, 12 bit, ecc. 3 - il rapporto di campionamento; A: B: C. 4: 2: 2 significa che hai orizzontalmente 1 valore Y per ogni pixel e un solo valore U e V condiviso tra due pixel di neightboard.
Ho appena lavorato sulla decodifica YUV 4: 2: 2 v210, seguendo questo link c'è il codice sorgente GLSL da decodificare e le risorse a cui ho fatto riferimento. Qualche consiglio è il benvenuto, è il mio primo decodificatore.
- 1. Conversione di YUV-> RGB (elaborazione immagine) -> YUV durante onPreviewFrame in Android?
- 2. Dove posso ottenere un file YUV grezzo?
- 3. sws_scale YUV -> RGB immagine distorta
- 4. Creare CVPixelBuffer da YUV con IOSurface supportato
- 5. Ho bisogno di aiuto con il display YUV in OpenGl
- 6. Come trattare con conversione da RGB a YUV
- 7. È possibile eseguire l'accelerazione hardware della conversione YUV -> RGB?
- 8. Converti CMSampleBufferRef in UIImmagine con lo spazio colore YUV?
- 9. convertire il video H264 in formato YUV grezzo
- 10. Conversione da YUV a RGB con framment shader
- 11. Come usare ScriptIntrinsicYuvToRGB (conversione di byte [] YUV a byte [] RGBA)
- 12. Come eseguire la conversione RGB-> YUV in C/C++?
- 13. Come catturare il video formattato YUV dalla fotocamera, visualizzarlo ed elaborarlo
- 14. Da YUV a RGBA su Apple A4, dovrei usare shader o NEON?
- 15. Come trovare la risoluzione e il conteggio dei frame nel file YUV 4: 2: 0?
- 16. SIMD: Perché la conversione del colore da SSE RGB a YUV ha la stessa velocità dell'implementazione C++?
- 17. Paperclip 422 Errore
- 18. Provare a riprodurre più file video contemporaneamente in Gstreamer
- 19. Converti Android camera2 api YUV_420_888 in RGB
- 20. Come posso creare un frame YUV422 da un JPEG o altra immagine su Ubuntu
- 21. webcam in streaming utilizzando gstreamer su UDP
- 22. Camera.PreviewCallback equivalente in Camera2 API
- 23. Qual è il modo più efficiente per visualizzare CVImageBufferRef su iOS
- 24. OpenCV per programmi di esempio Android con errore
- 25. Perché questa pipeline gstreamer si blocca?
- 26. Ruota immagine YUV420/NV21 in android
- 27. Genera x + xx + xxx + xxxx ... per un dato intero (per 4 -> 4 + 44 + 444 ...)
- 28. Perché frame-> pts aumenta di 20 anziché di 1?
- 29. AVCaptureVideoDataOutput e l'impostazione kCVPixelBufferWidthKey & kCVPixelBufferHeightKey
- 30. Quali sono le cause di un errore di entità non elaborabile 422 in Rails 3?