BR112015016316B1 - Método para converter um primeiro quadro tendo um formato de subamostragem de croma yuv 4:4:4 em um segundo quadro tendo um formato de subamostragem de croma yuv 4:2:0 e método para converter um primeiro quadro tendo um formato de subamostragem de croma yuv 4:4:4 em dois segundos quadros tendo ambos um formato de subamostragem de croma yuv 4: 2:0 - Google Patents
Método para converter um primeiro quadro tendo um formato de subamostragem de croma yuv 4:4:4 em um segundo quadro tendo um formato de subamostragem de croma yuv 4:2:0 e método para converter um primeiro quadro tendo um formato de subamostragem de croma yuv 4:4:4 em dois segundos quadros tendo ambos um formato de subamostragem de croma yuv 4: 2:0 Download PDFInfo
- Publication number
- BR112015016316B1 BR112015016316B1 BR112015016316-5A BR112015016316A BR112015016316B1 BR 112015016316 B1 BR112015016316 B1 BR 112015016316B1 BR 112015016316 A BR112015016316 A BR 112015016316A BR 112015016316 B1 BR112015016316 B1 BR 112015016316B1
- Authority
- BR
- Brazil
- Prior art keywords
- frame
- plane
- coefficients
- yuv
- frames
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 61
- VYZAMTAEIAYCRO-UHFFFAOYSA-N Chromium Chemical compound [Cr] VYZAMTAEIAYCRO-UHFFFAOYSA-N 0.000 title 3
- 238000013507 mapping Methods 0.000 claims abstract description 11
- 230000002596 correlated effect Effects 0.000 claims description 3
- 230000000875 corresponding effect Effects 0.000 claims 1
- 230000005540 biological transmission Effects 0.000 description 16
- 230000002123 temporal effect Effects 0.000 description 9
- 238000006243 chemical reaction Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 101000822695 Clostridium perfringens (strain 13 / Type A) Small, acid-soluble spore protein C1 Proteins 0.000 description 1
- 101000655262 Clostridium perfringens (strain 13 / Type A) Small, acid-soluble spore protein C2 Proteins 0.000 description 1
- 101000655256 Paraclostridium bifermentans Small, acid-soluble spore protein alpha Proteins 0.000 description 1
- 101000655264 Paraclostridium bifermentans Small, acid-soluble spore protein beta Proteins 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 229920001690 polydopamine Polymers 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N9/00—Details of colour television systems
- H04N9/64—Circuits for processing colour signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/186—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
- H04N19/88—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving rearrangement of data among different coding units, e.g. shuffling, interleaving, scrambling or permutation of pixel data or permutation of transform coefficient data among different blocks
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Color Television Systems (AREA)
- Processing Of Color Television Signals (AREA)
Abstract
MÉTODO E SISTEMA PARA CONVERTER UM QUADRO [IE PRIMEIRO FORMATO PARA UM OU MAIS QUADROS DE SEGUNDO FORMATO, DISPOSITIVO DE ARMAZENAMENTO EM HARDWARE LEGÍVEL POR COMPUTADOR, E SISTEMA PARA CONVERTER UM QUADRO YUV 4:4:4 EM UM OU MAIS QUADROS YUV 4:2:0, YUV 4:2:2, OU YUV 4:1:1. A presente invenção refere- se a um método para converter um quadro de primeiro formato (402) para um ou mais quadros de segundo formato (404). Em uma modalidade, o método inclui a etapa de acessar um quadro de primeiro formato com o uso de n coeficientes, em que n é o número total de coeficientes usado para os planos Y (408), U (410) e V (416) do quadro de primeiro formato. O método inclui adicionalmente a etapa de mapeamento dos coeficientes do quadro de primeiro formato para coeficientes de um ou mais quadros de segundo formato. Os um ou mais quadros de segundo formato têm n coeficientes por todos os quadros de segundo formato que correspondem a n coeficientes do quadro de primeiro formato.
Description
[001] Os computadores e sistemas de computação têm afetado quase todos os aspectos da vida moderna. Computadores estão geralmente envolvidos no trabalho, recreação, assistência médica, transporte, entretenimento, gerenciamento doméstico, etc. Os sistemas de computador são, com frequência, capazes de emitir imagem de vídeo para usuários.
[002] Muitos codificadores e decodificadores de vídeo disponíveis atualmente, especialmente dentre produtos de computador ao nível do consumidor, suportam preferencialmente o formato de subamostragem de croma YUV 4:2:0. Entretanto, um vídeo é, com frequência no formato YUV 4:4:4. Dessa forma, os quadros de vídeo são convertidos a partir do formato YUV 4:4:4 para o formato 4:2:0. O formato 4:2:0 pode fornecer uma experiência de usuário satisfatória para um vídeo natural normal sem textura trivial em que a maior parte das pessoas não percebe os artefatos visuais que podem estar presentes. Entretanto, para os conteúdos de tela e animação, o formato de subamostragem 4:2:0 resulta em artefatos muito notáveis, especialmente em textos.
[003] A matéria reivindicada no presente documento não é limitada a modalidades que solucionam quaisquer desvantagens ou que operam somente em ambientes como aqueles descritos acima. De preferência, esse fundamento é fornecido somente para ilustrar uma área tecnológica exemplificativa em que algumas modalidades descritas no presente documento podem ser praticadas.
[004] Uma modalidade ilustrada no presente documento inclui um método que pode ser praticado em um ambiente de computação. O método inclui atos para converter um quadro YUV 4:4:4 para um ou mais quadros YUV 4:2:0. O método inclui acessar um quadro YUV 4:4:4 com o uso de n coeficientes, em que n é o número total de coeficientes usado para os planos Y, U e V do quadro YUV 4:4:4. O método inclui adicionalmente mapear os coeficientes do quadro YUV 4:4:4 para coeficientes de um ou mais quadros YUV 4:2:0. Os um ou mais quadros YUV 4:2:0 têm n coeficientes por todos os quadros YUV 4:2:0 que correspondem a n coeficientes do quadro YUV 4:4:4.
[005] Esse Sumário é fornecido para introduzir uma seleção de conceitos de uma forma simplificada que é descrita adicionalmente abaixo na Descrição Detalhada. Esse Sumário não é concebido para identificar recursos chave ou recursos essenciais da matéria reivindicada, nem é concebido para ser usado como um auxílio na determinação do escopo da matéria reivindicada.
[006] Recursos e vantagens adicionais serão apresentados na descrição a seguir e, em parte, serão evidentes a partir da descrição ou podem ser aprendidos pela prática dos ensinamentos no presente documento. Recursos e vantagens da invenção podem ser realizados e obtidos por meio dos instrumentos e combinações particularmente apontados nas reivindicações em anexo. Os recursos da presente invenção se tornarão mais completamente claros a partir da seguinte descrição e das reivindicações anexas ou podem ser aprendidos pela prática da invenção conforme apresentada daqui em diante no presente documento.
[007] Para descrever a maneira na qual as vantagens e recursos citados acima e outros podem ser obtidos, uma descrição mais específica da matéria descrita brevemente acima será produzida por referência a modalidades específicas que são ilustradas nos desenhos anexos. Com a compreensão de que esses desenhos revelam somente modalidades comuns e, portanto, não devem ser considerados como limitadores do escopo, as modalidades serão descritas e explicadas com especificidade e detalhes adicionais através do uso dos desenhos em anexo nos quais:
[008] A Figura 1 ilustra um fluxo de trabalho para um método de realce espacial de conversão de um quadro YUV 4:4:4 para um quadro YUV 4:2:0;
[009] A Figura 2 ilustra um fluxo de trabalho de um método intercalado temporal de conversão de um quadro YUV 4:4:4 para um quadro YUV 4:2:0;
[0010] A Figura 3 mostra o fluxo de trabalho do método multiple- xador de canal de conversão de um quadro YUV 4:4:4 para um quadro YUV 4:2:0;
[0011] A Figura 4 ilustra detalhes adicionais relacionados ao mé-todo de realce espacial;
[0012] A Figura 5 ilustra detalhes adicionais relacionados ao mé-todo de realce espacial;
[0013] A Figura 6 ilustra detalhes adicionais relacionados ao mé-todo intercalado temporal;
[0014] A Figura 7 ilustra detalhes adicionais relacionados ao mé-todo intercalado temporal;
[0015] A Figura 7A ilustra detalhes adicionais relacionados ao mé-todo intercalado temporal;
[0016] A Figura 7B ilustra detalhes adicionais relacionados ao mé-todo intercalado temporal;
[0017] A Figura 8 ilustra detalhes adicionais relacionados ao método multiplexador;
[0018] A Figura 9 ilustra detalhes adicionais relacionados ao método multiplexador;
[0019] A Figura 9A ilustra detalhes adicionais relacionados ao método multiplexador;
[0020] A Figura 9B ilustra detalhes adicionais relacionados ao método multiplexador;
[0021] A Figura 10 ilustra um método de conversão de um quadro YUV 4:4:4 para um ou mais quadros YUV 4:2:0.
[0022] A seguir são ilustrados três métodos de conversão de quadro para converter de YUV 4:4:4 para YUV 4:2:0 de maneira que não apenas solucione artefatos importunos, mas são realizados de forma que os quadros convertidos tenham uma alta correlação temporal e de textura que possam trazer benefícios para gerar melhores resultados de compressão. Devido à maior correlação temporal e de textura, os métodos são compatíveis com estimação de movimento e filtragem de forma que a complexidade de codificação possa ser reduzida e a efi-cácia de codificação possa ser aprimorada. Além disso, os métodos e, em particular, o primeiro e o segundo métodos, podem ser usados com muitos codecs com base em padrões existentes como MPEG-2, MPEG-4 Parte 2, MPEG AVC/H.264, VC1, HEVC, etc.
[0023] Em uma disposição YUV 4:4:4, cada plano (isto é, Y, U e V) tem um coeficiente para cada pixel em um quadro. A conversão de um quadro YUV 4:4:4 para um quadro YUV 4:2:0 resulta em metade do número de coeficientes. Por exemplo, um quadro de 10 pixels por 10 pixels em YUV 4:4:4 terá 300 coeficientes, 100 para o plano Y, 100 para o plano U e 100 para o plano V. Em métodos tradicionais, conver- ter esse quadro para um quadro YUV 4:2:0 resulta em um quadro que tem 150 coeficientes devido à amostragem descendente no plano UV, ou seja 100 coeficientes no plano Y, 25 coeficientes no plano U e 25 coeficientes no plano V. Em particular, embora um quadro YUV 4:4:4 tenha um número igual de coeficientes para cada plano, um quadro YUV 4:2:0 tem 100% dos coeficientes do mesmo no plano Y, 25% dos coeficientes do mesmo no plano U e 25% dos coeficientes do mesmo no plano Z. Isso pode resultar na perda de informações quando quadros são convertidos de YUV 4:4:4 para YUV 4:2:0. Dessa forma, algumas modalidades podem superar essa perda de informações por, essencialmente, duplicar o número de coeficientes de um quadro YUV 4:4:4 antes de converter para um quadro YUV 4:2:0. Alternativamente, os coeficientes de um quadro YUV 4:4:4 podem ser mapeados para um ou mais quadros YUV 4:2:0 em que o quadro(s) YUV 4:2:0 (como um total de soma) tem o mesmo número de coeficientes que um quadro YUV 4:4:4.
[0024] Por exemplo, em algumas modalidades, um quadro YUV 4:4:4 com n coeficientes pode ser mapeado para um quadro espacialmente equivalente YUV 4:2:0 com n coeficientes. Alternativamente, um quadro YUV 4:4:4 com n coeficientes pode ser mapeado temporalmente para dois quadros YUV 4:2:0 com n/2 coeficientes (ou quatro quadros YUV 4:2:0 com n/4 coeficientes, etc.). Em ainda outro exemplo, um quadro YUV 4:4:4 com n coeficientes pode ser multiplexado para dois quadros YUV 4:2:0 com n/2 coeficientes (ou quatro quadros YUV 4:2:0 com n/4 coeficientes, etc.).
[0025] As Figuras 1, 2 e 3 ilustram fluxos de trabalho que podem ser usados para três métodos de conversão diferentes.
[0026] A Figura 1 ilustra um fluxo de trabalho 102 para um método de realce espacial. A entrada para um módulo de realce de quadro espacial 104 é um quadro YUV 4:4:4. O módulo de realce de quadro es- pacial 104 gerará um quadro YUV 4:2:0 com o dobro da altura do quadro YUV 4:4:4 original. O quadro gerado pode ser inserido diretamente em um codificador de vídeo 106.
[0027] O codificador de vídeo 106 pode ser implantado de diferentes formas. Por exemplo, em algumas modalidades, o codificador de vídeo 106 pode ser um codificador de vídeo em hardware incluído em um dispositivo eletrônico, tal como um dispositivo eletrônico portátil ou outro de consumidor. Em algumas modalidades, o codificador de vídeo 106 pode ser um codificador de vídeo com base em hardware otimizado para codificação de vídeo em YUV 4:2:0 (ou outros formatos de codificação otimizados) embora não tenha funcionalidade otimizada para codificação de vídeo YUV 4:4:4 (ou outros formatos de codificação não otimizados), o que resulta em mais distorções ao processar formatos para os quais o hardware não está otimizado do que ao processar formatos para os quais o hardware está otimizado. Alternativamente, o codificador de vídeo 106 pode ser um codificador de vídeo em software implantado pela execução de módulos de software configurados para realizar codificação de vídeo. O codificador de vídeo 106 gerará fluxos de bits como a entrada para um canal de transmissão 108.
[0028] O canal de transmissão 108 pode ser implantado de várias formas. Por exemplo, em algumas modalidades, o canal de transmissão pode incluir armazenamento. Por exemplo, o canal de transmissão pode incluir um ou mais dentre um banco de dados, armazenamento em arquivo simples, armazenamento em disco, armazenamento em memória, etc. Alternativamente ou adicionalmente, o canal de trans-missão pode incluir um ou mais canais de rede como canais Ethernet com fio ou sem fio, canais de barramento de interconexão de dispositi-vo, etc.
[0029] Um sítio decodificador 110 recuperará os fluxos de bits do canal de transmissão 108 para decodificar um quadro YUV 4:2:0. Com o uso do procedimento inverso do realce espacial, o quadro YUV 4:2:0 decodificado pode ser reorganizado por um módulo de desacoplamen- to de quadro 112 para um quadro YUV 4:4:4 de forma que o mesmo possa ser exibido em um visor 114.
[0030] Conforme mostrado na Figura 4, o método de realce espacial usa um quadro de recipiente YUV 4:2:0 404 que tem a resolução de 2x a altura do quadro YUV 4:4:4 original 402. O canal Y 406 (ou plano) do quadro YUV 4:2:0 404 é composto dos coeficientes do canal Y 408 e do canal U 410 do quadro YUV 4:4:4 original 402. O plano da metade do topo do canal Y 406 do quadro YUV 4:2:0 404 pode ser o plano Y 408 do quadro YUV 4:4:4 402 e o plano da metade do fundo do canal Y 406 do quadro YUV 4:2:0 404 pode ser os coeficientes do plano U 410 do quadro YUV 4:4:4. O canal U 412 e o canal V 414 do quadro YUV 4:2:0 404 são gerados a partir do canal V 416 do quadro YUV 4:4:4 402. Para garantir a correlação temporal dentre os canais Y, U e V gerados, a Figura 5 mostra como reorganizar o quadro YUV 4:4:4 402 para o quadro YUV 4:2:0 404. As setas na Figura 5 mostram a correlação pelos canais Y, U e V gerados. A seguir é ilustrada a correlação:
[0031] Y0420(x,y) = Y444(x,y) em que Y0420 é o plano da metadedo topo do canal Y de YUV 4:2:0 e Y444 é o plano Y inteiro de YUV 4:4:4.
[0032] Y1420(x,y) = U444(x,y) em que Y1420 é o plano da metade do fundo do canal Y de YUV 4:2:0 e U444 é o plano U inteiro de YUV 4:4:4.
[0033] U0420(x,y) = V444(2*t,2*s) em que U0420 é o plano da metade do topo do canal U de YUV 4:2:0 e V444 é parte do plano V de YUV 4:4:4.
[0034] t(((0m/i^21))se(0,n^2-1)
[0035] V0420(x,y) = V444(2*t,2*s+1) em que V0420 é o plano da metade do topo do canal V de YUV 4:2:0 e V444 é parte do plano V de YUV 4:4:4.
[0036] tε(O, m/2i)Ssε(0,n/2) 1)
[0037] U1420(x,y) = V444(2*t+l,2*s) em que U1420 é o plano da metade do fundo do canal U de YUV 4:2:0 e V444 é parte do plano V de YUV 4:4:4.
[0038] t €00,022 -)) s 0(n,n/2- 1)
[0039] V1420(x,y) = V444(2*t+l,2*s+l) em que V1420 é o plano da metade do fundo do canal V de YUV 4:2:0 e V444 é parte do plano V de YUV 4:4:4.
[0040] t €00, n22-)) s 0(O,Π/2- 1)
[0041] A Figura 2 mostra o fluxo de trabalho 202 de um método intercalado temporal. O módulo intercalado temporal aceita um quadro YUV 4:4:4 602 (consultar a Figura 6). O módulo intercalado temporal gerará dois quadros YUV 4:2:0, um com campos ímpares 205a e um com campos pares 205b, sendo que cada um dos dois quadros YUV 4:2:0 604a e 604b tem a mesma resolução que o quadro YUV 4:4:4 original 602. Os quadros gerados 604a e 604b podem ser alimentados diretamente no codificador de vídeo 206 sequencialmente (ou em pa/ ralelo dependendo do projeto do codificador). O codificador de vídeo 206 gerará fluxos de bits como a entrada para o canal de transmissão 208 que pode ser, por exemplo, armazenamento ou redes conforme ilustrado no exemplo anterior. Um sítio decodificador recuperará os fluxos de bits do canal de transmissão 208 para decodificar esses dois quadros YUV 4:2:0 604a e 604b. Os quadros YUV 4:2:0 decodificados podem ser intercalados em um módulo intercalador de quadro 212 pa/ ra um quadro YUV 4:4:4.
[0042] Conforme mostrado na Figura 6, o método intercalado tem/ poral usa dois quadros de recipiente de YUV 4:2:0 604a e 604b que têm a mesma resolução que o quadro YUV 4:4:4 original 602. O canal Y 606a do primeiro quadro YUV 4:2:0 604a é composto pelo canal Y 608 e o canal U 610 dos campos pares do quadro YUV 4:4:4 original 602. O plano da metade do topo do canal Y 606a do primeiro quadro YUV 4:2:0 604a pode ser o plano Y 608 dos campos pares do quadro YUV 4:4:4 602 e o plano da metade do fundo do canal Y 606a do primeiro quadro YUV 4:2:0 604a pode ser o plano U 610 do campo par do quadro YUV 4:4:4 602. Os canais U e V 612a e 612b do primeiro quadro YUV 4:2:0 604a são gerados a partir do canal V 616 dos campos pares do quadro YUV 4:4:4 602. A mesma estratégia se aplica ao segundo quadro YUV 4:2:0 604b que é composto pelos campos ímpares do quadro YUV 4:4:4 original 602. Para garantir a correlação temporal pelos canais Y, U e V gerados, a Figura 7 mostra como reorganizar um quadro YUV 4:4:4 602 para dois quadros YUV 4:2:0 604a e 604b. As setas na Figura 7 mostram a correlação pelos canais Y, U e V gerados.
[0043] A seguir é ilustrado como os quadros são dispostos:
[0044] Ye0420(x,y) = Y444(2*t,s) em que Ye0420 é o plano da metade do topo do canal Y do primeiro YUV 4:2:0 e Y444 é o plano Y inteiro de YUV 4:4:4
[0045] tε(O, m/21))sε(0, n) 1)
[0046] Ye1420(x,y) = U444(2*t,s) em que Ye1420 é o plano da me tade do fundo do canal Y do primeiro YUV 4:2:0 e U444 é o plano U inteiro de YUV 4:4:4
[0047] tε0O, m/∑-nsεin, ri) 1)
[0048] Ue0420(x,y) = V444(4*t,2*s) em que Ue0420 é o plano da metade do topo do canal U do primeiro YUV 4:2:0 e V444 é parte do plano V de YUV 4:4:4
[0049] tε0O, m/4-))sε(0,n/2) 1)
[0050] Ve0420(x,y) = V444(4*t,2*s+1) em que Ve0420 é o plano da metade do topo do canal V do primeiro YUV 4:2:0 e V444 é parte do plano V de YUV 4:4:4
[0051] t(E0OmT44i)Ss>e(O,n^2) 1)
[0052] Ue1420(x,y) = V444(4*t+2,2*s) em que Ue1420 é o plano da metade do fundo do canal U do primeiro YUV 4:2:0 e V444 é parte do plano V de YUV 4:4:4
[0053] te0O, n44-)Sse(n,n/2) 1)
[0054] Ve1420(x,y) = V444(4*t+2,2*s+l) em que Ve1420 é o plano da metade do fundo do canal V do primeiro YUV 4:2:0 e V444 é parte do plano V de YUV 4:4:4
[0055] te0O, i^-nsein.n^) 1)
[0056] Yo0420(x,y) = Y444(2*t+1 ,s) em que Yo0420 é o plano da metade do topo do canal Y do segundo YUV 4:2:0 e Y444 é o plano Y inteiro de YUV 4:4:4
[0057] te0O, πV2-)Sse(n, ri) 1)
[0058] Yo1420(x,y) = U444(2*t+l,s) em que Yo1420 é o plano da metade do fundo do canal Y do segundo YUV 4:2:0 e U444 é o plano U inteiro de YUV 4:4:4
[0059] tε0O, m/2-)ssε(n, ri) 1)
[0060] Uo0420(x,y) = V444(4*t+l,2*s) em que Uo0420 é o plano da metade do topo do canal U do segundo YUV 4:2:0 e V444 é parte do plano V de YUV 4:4:4
[0061] t ε0Omn^4-)s s ε(n,n^2-1)
[0062] Vo0420(x,y) = V444(4*t+l,2*s+l) em que Vo0420 é o plano da metade do topo do canal V do segundo YUV 4:2:0 e V444 é parte do plano V de YUV 4:4:4
[0063] tε0O, n44--Ssε(O,n/2-1)
[0064] Uo1420(x,y) = V444(4*t+3,2*s) em que Uo1420 é o plano da metade do fundo do canal U do segundo YUV 4:2:0 e V444 é parte do plano V de YUV 4:4:4
[0065] tε0O, n44--Ssε(O,n/2-1)
[0066] Vo1420(x,y) = V444(4*t+3,2*s+l) em que Vo1420 é o plano da metade do fundo do canal V do segundo YUV 4:2:0 e V444 é parte do plano V de YUV 4:4:4
[0067] tε(O, m/41))sε(0,n-2) 1)
[0068] A Figura 3 mostra o fluxo de trabalho 302 do método multi-plexador de canal. O módulo multiplexador de canal 302 aceita um quadro YUV 4:4:4 802 (consultar a Figura 8). O módulo multiplexador de canal 302 gerará dois quadros YUV 4:2:0 804a e 804b com a mesma resolução do quadro YUV 4:4:4 original 802. Os quadros gerados representam um canal YU 305a e um canal UV 305b (conforme ilus-trado abaixo) e podem ser alimentados diretamente no codificador de vídeo 306 sequencialmente (ou em paralelo dependendo do projeto do codificador). O codificador de vídeo 306 gerará fluxos de bits como a entrada para o canal de transmissão 308 que, conforme ilustrado acima, pode ser armazenamento ou redes. Um sítio decodificador recuperará os fluxos de bits do canal de transmissão 308 para decodificar esses dois quadros YUV 4:2:0 em módulos decodificadores 310a e 310b. Os quadros decodificados YUV 4:2:0 podem ser decompostos para um quadro YUV 4:4:4 em um módulo de decomposição de canal 312 e exibidos em um visor 314.
[0069] Conforme mostrado na Figura 8, o método multiplexador de canal usa dois quadros de recipiente de YUV 4:2:0 804a e 804b que têm a mesma resolução que o quadro YUV 4:4:4 original. O canal Y 806a do primeiro quadro YUV 4:2:0 804a é composto pelo o canal Y 808 do quadro YUV 4:4:4 original 802. Os canais U e V 812a e 814a, respectivamente, do primeiro quadro YUV 4:2:0 804a são gerados a partir do canal V 816 do quadro YUV 4:4:4 802. O canal Y 806b do se-gundo quadro YUV 4:2:0 804b é composto do canal U 810 do quadro YUV 4:4:4 original 802. Os canais U e V 812b e 814b, respectivamente, do segundo quadro YUV 4:2:0 804b, são gerados a partir do canal V 816 do quadro YUV 4:4:4 802. Para garantir a correlação temporal pelos canais Y, U e V gerados, a Figura 9 mostra como reorganizar um quadro YUV 4:4:4 para um quadro YUV 4:2:0. As setas na Figura 9 mostram a correlação pelos canais Y, U e V gerados. As seguintes de-finições podem ser usadas para realizar a correlação de coeficientes:
[0070] Y0420(x,y) = Y444(x,y) em que Y0420 é o canal Y do primeiro YUV 4:2:0 e Y444 é o plano Y inteiro de YUV 4:4:4
[0071] U0420(x,y) = V444(2*t,2*s) em que U0420 é o canal U do primeiro YUV 4:2:0 e V444 é parte do plano V de YUV 4:4:4
[0072] t eoo, m/2 -I) se (o,n/2 -1)
[0073] V0420(x,y) = V444(2*t,2*s+1) em que V0420 é o canal V do primeiro YUV 4:2:0 e V444 é parte do plano V de YUV 4:4:4
[0074] te(O, n^-lsseín.n^-1)
[0075] Y1420(x,y) = U444(x,y) em que Y1420 é o canal Y do se gundo YUV 4:2:0 e U444 é o plano U inteiro de YUV 4:4:4
[0076] U1420(x,y) = V444(2*t+l,2*s) em que U1420 é o canal U do segundo YUV 4:2:0 e V444 é parte do plano V de YUV 4:4:4
[0077] t £00,01/2 -)s s ε(n,n/2) 1)
[0078] V1420(x,y) = V444(2*t+l,2*s+l) em que V1420 é o canal V do segundoYUV 4:2:0 e V444 é parte do plano V de YUV 4:4:4
[0079] te0O, n22-1)se(0,n/2-1)
[0080] A seguinte descrição se refere agora a inúmeros métodos e atos de método que podem ser realizados. Embora os atos de método possam ser discutidos em certa ordem ou ilustrados em um fluxograma como ocorrendo em uma ordem específica, nenhuma ordenação específica é necessária a menos que mencionado especificamente ou exigida devido a um ato ser dependente de outro ato ser completado antes do ato ser realizado.
[0081] Com referência agora à Figura -0, é ilustrado um método -000. O método 1000 pode ser praticado em um ambiente de compu tação. O método 1000 inclui atos para converter um quadro de primeiro formato (ilustrado especificamente como um quadro YUV 4:4:4, mas pode ser implantado como qualquer quadro de formato adequado) para um ou mais quadros de segundo formato (ilustrados como quadros YUV 4:2:0, mas podem ser implantados como quaisquer quadros de formato adequado). O método 1000 inclui acessar um quadro YUV 4:4:4 com o uso de n coeficientes (ato 1002). Sendo que n é o número total de coeficientes usados para os planos Y, U e V do quadro YUV 4:4:4.
[0082] O método 1000 inclui adicionalmente mapear os coeficientes do quadro YUV 4:4:4 para coeficientes de um ou mais quadros YUV 4:2:0. Os um ou mais quadros YUV 4:2:0 têm n coeficientes por todos os quadros YUV 4:2:0 que correspondem a n coeficientes do quadro YUV 4:4:4 (ato 1004).
[0083] O método 1000 pode ser realizado em que mapear é realizado com base em uma equivalência espacial entre o quadro YUV 4:4:4 e os um ou mais quadros YUV 4:2:0. Por exemplo, conforme ilustrado acima, no primeiro algoritmo conforme mostrado pelas Figuras 1, 4 e 5, os um ou mais quadros YUV 4:2:0 compreendem um único quadro YUV 4:2:0 com n coeficientes correlacionados espacialmente aos coeficientes do quadro YUV 4:4:4. A Figura 5 ilustra que, em tal exemplo, coeficientes do plano Y do quadro YUV 4:4:4 são mapeados para coeficientes do plano Y do quadro YUV 4:2:0, coeficientes do plano U do quadro YUV 4:4:4 são mapeados para coeficientes do plano Y do quadro YUV 4:2:0 e coeficientes do plano V do quadro YUV 4:4:4 são mapeados para coeficientes dos planos U e V do quadro YUV 4:2:0.
[0084] O método 1000 pode ser realizado em que mapear é realizado com base em uma equivalência temporal entre o quadro YUV 4:4:4 e os um ou mais quadros YUV 4:2:0. Dois exemplos de equivalência temporal são ilustrados acima. O primeiro é mostrado pelo se gundo algoritmo ilustrado pelo método de intercalação das Figuras 2, 6 e 7 e o segundo é mostrado pelo terceiro algoritmo ilustrado pelo método multiplexador das Figuras 3, 8 e 9.
[0085] Dessa forma, tal equivalência temporal pode ser alcançada em que os um ou mais quadros YUV 4:2:0 compreendem m quadros YUV 4:2:0 com n/m coeficientes para cada quadro e em que o conjunto de coeficientes que inclui todos os coeficientes nos um ou mais quadros YUV 4:2:0 é correlacionado temporalmente ao conjunto de coeficientes do quadro YUV 4:4:4.
[0086] O método 1000 pode ser praticado em que os um ou mais quadros YUV 4:2:0 compreendem dois quadros YUV 4:2:0, sendo que cada quadro tem n/2 coeficientes. A primeira porção dos coeficientes de plano Y do quadro YUV 4:4:4 é mapeada para os coeficientes de plano Y de um primeiro quadro YUV 4:2:0 e a segunda porção dos co-eficientes de plano Y do quadro YUV 4:4:4 é mapeada para os coefici-entes de plano Y de um segundo quadro YUV 4:2:0. A primeira porção dos coeficientes de plano U do quadro YUV 4:4:4 é mapeada para os coeficientes de plano Y do primeiro quadro YUV 4:2:0 e a segunda porção dos coeficientes de plano U do quadro YUV 4:4:4 é mapeada para os coeficientes de plano Y do segundo quadro YUV 4:2:0. A pri-meira porção dos coeficientes de plano V do quadro YUV 4:4:4 é ma-peada para os coeficientes de plano V do primeiro quadro YUV 4:2:0 e a segunda porção dos coeficientes de plano V do quadro 4:4:4 é mapeada mapeados para os coeficientes de plano V do segundo quadro YUV 4:2:0. Um exemplo disso é ilustrado nas Figuras 6 e 7.
[0087] O método 1000 pode ser praticado em que os um ou mais quadros YUV 4:2:0 compreendem dois quadros YUV 4:2:0, sendo que cada quadro tem n/2 coeficientes. Os coeficientes de plano Y do quadro YUV 4:4:4 são mapeados para os coeficientes de plano Y de um primeiro quadro YUV 4:2:0. Os coeficientes de plano U do quadro YUV 4:4:4 são mapeados para o plano Y de um segundo quadro YUV 4:2:0. A primeira porção dos coeficientes de plano V do quadro YUV 4:4:4 é mapeada para os planos U e V do primeiro quadro YUV 4:2:0 e a segunda porção dos coeficientes de plano V do quadro YUV 4:4:4 é mapeada para os planos U e V de um segundo quadro YUV 4:2:0. Um exemplo disso é ilustrado nas Figuras 8 e 9.
[0088] O método 1000 pode incluir adicionalmente mapear os coeficientes dos um ou mais quadros YUV 4:2:0 para coeficientes de um quadro YUV 4:4:4 de saída e exibir o quadro de saída. Por exemplo, conforme ilustrado nas Figuras 1, 2 e 3, sendo que os quadros podem ser quadros YUV 4:4:4 e exibidos nos visores 114, 214 ou 314.
[0089] Embora os exemplos acima tenham sido ilustrados como conversões de YUV 4:4:4 para YUV 4:2:0, deve ser compreendido que outras conversões podem ser feitas. Por exemplo, as modalidades podem ser usadas para converter YUV 4:4:4 para 4:1:1 YUV, 4:2:2 YUV ou outros formatos.
[0090] Adicionalmente, os métodos podem ser praticados por um sistema de computador que inclui um ou mais processadores e meios legíveis por computador como memória de computador. Em particular, a memória de computador pode armazenar instruções executáveis por computador que, quando executadas por um ou mais processadores, fazem com que várias funções sejam realizadas, tais como os atos citados nas modalidades.
[0091] As modalidades da presente invenção podem compreender ou utilizar um computador de propósito geral ou específico que inclui hardware de computador conforme discutido em maiores detalhes abaixo. As modalidades dentro do escopo da presente invenção também incluem meios físicos e outros meios legíveis por computador para carregar ou armazenar instruções executáveis por computador e/ou estruturas de dados. Tais meios legíveis por computador podem ser quaisquer meios disponíveis que podem ser acessados por um sistema de computador de propósito geral ou de propósito específico. Os meios legíveis por computador que armazenam instruções executáveis por computador são meios de armazenamento físico. Os meios legíveis por computador que portam instruções executáveis por computador são meios de transmissão. Dessa forma, como exemplo e não limitação, as modalidades da invenção podem compreender pelo menos dois tipos distintamente diferentes de meios legíveis por computador: meios de armazenamento legíveis por computador físicos e meios legíveis por computador de transmissão.
[0092] Os meios de armazenamento legíveis por computador físicos incluem RAM, ROM, EEPROM, CD-ROM ou outro armazenamento em disco óptico (como CDs, DVDs, etc.), armazenamento em disco magnético ou outros dispositivos de armazenamento magnético ou qualquer outro meio que possa ser usado para armazenar meios de código de programa desejados na forma de instruções executáveis por computador ou estruturas de dados e que possa ser acessado por um computador de propósito geral ou de propósito específico.
[0093] A "rede" é definida como um ou mais enlaces de dados que possibilitam o transporte de dados eletrônicos entre sistemas de com-putador e/ou módulos e/ou outros dispositivos eletrônicos. Quando in-formações são transferidas ou fornecidas por uma rede ou outra cone-xão de comunicações (ou com fio, sem fio ou uma combinação de com fio ou sem fio) para um computador, o computador visualiza adequa-damente a conexão como um meio de transmissão. Os meios de transmissão podem incluir uma rede e/ou enlaces de dados que podem ser usados para transportar ou meios de código de programa desejados na forma de instruções executáveis por computador ou estruturas de dados e que podem ser acessados por um computador de propósito geral ou computador de propósito específico. As combina- ções do acima também são incluídas dentro do escopo de meios legíveis por computador.
[0094] Adicionalmente, após alcançar vários componentes de sistema de computador, os meios de código de programa na forma de instruções executáveis por computador ou estruturas de dados podem ser transferidos automaticamente a partir de meios legíveis por computador de transmissão para meios de armazenamento legíveis por computador físicos (ou vice-versa). Por exemplo, as instruções executáveis por computador ou estruturas de dados recebidas por uma rede ou enlace de dados podem ser armazenadas temporariamente em uma RAM dentro de um módulo de interface de rede (por exemplo, uma "NIC") e, então, eventualmente transferidas para uma RAM do sistema de computador e/ou para meios legíveis por computador menos voláteis em um sistema de computador. Dessa forma, meios de armazenamento físico legíveis por computador podem ser incluídos nos componentes de sistema de computador que também (ou até mesmo principalmente) utilizam meios de transmissão.
[0095] As instruções executáveis por computador compreendem, por exemplo, instruções e dados que fazem com que um computador de propósito geral, computador de propósito específico ou dispositivo de processamento de propósito específico realizem certa função ou um grupo de funções. As instruções executáveis por computador podem ser, por exemplo, binários, instruções de formato intermediário como linguagem assembly ou até mesmo código fonte. Embora a matéria seja descrita em linguagem específica para recursos estruturais e/ou atos metodológicos, deve se compreender que a matéria definida nas reivindicações anexas não é necessariamente limitada aos recursos ou atos descritos acima. De preferência, os recursos e atos descritos são revelados como formas de exemplo de implantação das reivindicações.
[0096] Os versados na técnica compreenderão que a invenção pode ser praticada em ambientes de computação em rede com muitos tipos de configurações de sistema de computador que incluem computadores pessoais, computadores de mesa, computadores laptop, processadores de mensagem, dispositivos portáteis, sistemas de múltiplos processadores, eletrônicos para consumidor programáveis ou com base em microprocessador, redes de PC, minicomputadores, computadores do tipo mainframe, telefones móveis, PDAs, pagers, roteadores, comutadores e similares. A invenção também pode ser praticada em ambientes de sistema distribuído em que sistemas de computador locais e remotos que são ligados (ou por enlaces de dados com fio, enlaces de dados sem fio ou por uma combinação de enlaces de dados com fio e sem fio) através de uma rede, realizam juntos as tarefas. Em um ambiente de sistema distribuído, módulos de programa podem ser localizados em dispositivos de armazenamento em memória tanto locais quanto remotos.
[0097] Alternativamente ou além disso, o funcionalmente descrito no presente documento pode ser realizado, pelo menos em parte, por um ou mais componentes lógicos de hardware. Por exemplo, e sem limitação, tipos ilustrativos de componentes lógicos de hardware que podem ser usados incluem Arranjos de Porta programáveis em Campo (FPGAs), Circuitos Integrados específicos para Programa (ASICs), Produtos Padrões específicos para Programa (ASSPs), sistemas de Sistema em um Chip (SOCs), Dispositivos Lógicos Programáveis Complexos (CPLDs), etc.
[0098] A presente invenção pode ser incorporada em outras formas específicas sem se afastar do espírito ou das características da mesma. As modalidades descritas devem ser consideradas em todos os aspectos somente como ilustrativas não restritivas. O escopo da invenção é, portanto, indicado pelas reivindicações anexas ao invés de pela descrição precedente. Todas as alterações que são abrangidas pelo significado e alcance de equivalência das reivindicações devem ser incorporadas ao escopo das mesmas.
Claims (8)
1. Método implementado por computador para converter um primeiro quadro (402) tendo um formato de subamostragem de croma YUV 4:4:4 em um segundo quadro (404) tendo um formato de suba-mostragem de croma YUV 4:2:0, o método caraceerzaado pelo aato de que compreende: acessar o primeiro quadro usando n coeficientes, onde n é o número total de coeficientes usados para os planos Y (408), U (410) e V (416) do primeiro quadro (402); e mapear os n coeficientes do primeiro quadro (402) para co-eficientes do segundo quadro (404), o segundo quadro (404) tendo n coeficientes combinando com os n coeficientes do primeiro quadro (402), em que os n coeficientes do segundo quadro (404) são es-pacialmente correlacionados com os n coeficientes do primeiro quadro (402), e em que os coeficientes do plano Y (408) do primeiro quadro (402) são mapeados para coeficientes de uma primeira porção do plano Y (406) do segundo quadro (404), coeficientes do plano U (410) do primeiro quadro (402) são mapeados para coeficientes de uma segunda porção do plano Y (406) do segundo quadro (404), e coeficientes do plano V (416) do primeiro quadro (402) são mapeados para coeficientes do plano U (412) e o plano V (414) do se-gundo quadro (404).
2. Método implementado por computador, de acordo com a reivindicação 1, caaaceerizado pelo rato de que aprimeira porçoo do plano Y (406) do segundo quadro (404) é uma metade do plano superior do plano Y (406) do segundo quadro (404), e em que a segunda porção do plano Y (406) do segundo quadro (404) é uma metade do plano inferior do plano Y (406) do segundo quadro (404).
3. Método implementado por computador, de acordo com a reivindicação 1, aaaatParzaado pelo fato de qua aindccomereende mapear os coeficientes dos segundos quadros para coeficientes de um primeiro quadro de saída e exibir o quadro de saída.
4. Método implementado por computador, de acordo com a reivindicação 1, caaacPerzzado pelo fato de que omapemmento dos coeficientes é realizado por: Y0420 (x, y) = Y444 (x, y), em que Y0420 é uma metade do plano superior do plano Y do segundo quadro e Y444 é todo o plano Y do primeiro quadro; Y1420 (x, y) = U444 (x, y), onde Y1420 é um meio plano in-ferior do plano Y do segundo quadro e U444 é todo o plano U do pri-meiro quadro; U0420 (x, y) = V444 (2*t, 2*s), onde U0420 é um meio plano superior do plano U do segundo quadro, e V444 é parte do plano V do primeiro quadro, onde t ε (0, m/2-1), s ε(n,n/2-1); V0420 (x, y) = V444 (2*t, 2*s + -), onde V0420 é a metade superior do plano V do segundo quadro, e V444 é parte do plano V do primeiro quadro, onde t ε(0, m/2-1), sε (n,n/2-1); U-420 (x, y) = V444 (2*t + -,2*s), onde U/420 é a metade inferior do plano U do segundo quadro, e V444 é parte do plano V do primeiro quadro, onde t ε(0, m/2-1), sε (n,n/2-1); V-420 (x, y) = V444 (2*t + -,2*s + -), onde V/420 é uma metade do plano inferior do plano V do segundo quadro, e V444 é parte do plano V do primeiro quadro, onde t ε(0, m/2-1), sε (n,n/2-1).
5. Método implementado por computador para converter um primeiro quadro (602) tendo um formato de subamostragem de croma YUV 4:4:4 em dois segundos quadros (604a, 604b) tendo ambos um formato de subamostragem de croma YUV 4:2:0, o método caaacPeri- zado pelo fato de que compreende: acessar o primeiro quadro (602) usando n coeficientes, onde n é o número total de coeficientes usados para os planos Y (608), U (610) e V (616) do primeiro quadro (602); e mapear os coeficientes do primeiro quadro (602) para coe-ficientes dos dois segundos quadros (604a, 604b), os dois segundos quadros (604a, 604b) tendo n coeficientes em ambos os segundos quadros (604a, 604b) correspondendo aos n coeficientes do primeiro quadro (602), em que o conjunto de coeficientes incluindo todos os coefi-cientes nos dois segundos quadros (604a, 604b) está temporariamente correlacionado ao conjunto de coeficientes do primeiro quadro (602), em que os dois segundos quadros (604a, 604b) compreen-dem um segundo quadro com campos ímpares (604b) e um segundo quadro com campos pares (604a), o segundo quadro com campos ím-pares (604b) e o segundo quadro com campos pares (604a) cada um com coeficientes n/2: em que os coeficientes do plano Y (608) de um campo par do primeiro quadro (602) são mapeados para os coeficientes de uma primeira porção do plano Y (606a) do segundo quadro com campos pares (604a) e os coeficientes do plano Y (608) de um campo ímpar do primeiro quadro (602) são mapeados para os coeficientes de uma primeira porção do plano Y (606b) do segundo quadro com campos ímpares (604b); em que os coeficientes do plano U (610) do campo par do primeiro quadro (602) são mapeados para os coeficientes de uma se-gunda porção do plano Y (606a) do segundo quadro com campos pares (604a) e os coeficientes do plano U (610) do campo ímpar do primeiro quadro (602) são mapeados para os coeficientes de uma se gunda porção do plano Y (606b) do segundo quadro com campos ím-pares (604b); e em que os coeficientes do plano V (616) do campo par do primeiro quadro (602) são mapeados para os coeficientes do plano U (612a) e do plano V (612b) do segundo quadro com campos pares (604a) e os coeficientes do plano V (616) do campo ímpar do primeiro quadro (602) são mapeados para os coeficientes do plano U e do plano V do segundo quadro com campos ímpares (604b).
6. Método implementado por computador, de acordo com a reivindicação 5, caracterizado pelo fato de que aprimeira porçoo do plano Y (606a) do segundo quadro com campos pares (604a) é uma metade do plano superior do plano Y (606a) do segundo quadro com mesmo campos (604a), em que a primeira porção do plano Y (606b) do segundo quadro com campos ímpares (604b) é uma metade do plano superior do plano Y (606b) do segundo quadro com campos ímpares (604b), em que a segunda porção do plano Y (606a) do segundo quadro com campos pares (604a) é uma metade do plano inferior do plano Y (606a) do segundo quadro com campos pares (604a), em que a segunda porção do plano Y (606b) do segundo quadro com campos ímpares (604b) é uma metade do plano inferior do plano Y (606b) do segundo quadro com campos ímpares (604b).
7. Método implementado por computador, de acordo com a reivindicação 5, raractarirado pelo fato de qua aindccompreende mapear os coeficientes dos dois segundos quadros para coeficientes de um primeiro quadro de saída e exibir o quadro de saída.
8. Método implementado por computador, de acordo com a reivindicação 5, caracterizado pelo fato de que omapeomepto dos coeficientes é realizado por: Ye0420 (x, y) = Y444 (2*t, s) onde Ye0420 é um meio plano superior do plano Y do segundo quadro com campos pares e Y444 é todo o plano Y do primeiro quadro, onde t ε0O, m/2-)), sc (0,n-1); Ye1420 (x, y) = U444 (2*t, s) onde Ye-420 é um meio plano inferior do plano Y do segundo quadro com campos pares, e U444 é todo o plano U do primeiro quadro, onde t ε0O, m/2-1), so (0,H-1); Ue0420 (x, y) = V444 (4*t, 2*s) em que Ue0420 é a metade superior do plano U do segundo quadro com campos pares e V444 é parte do plano V do primeiro quadro, onde t ε0O, m/4-)), s 0 (n,n/2-1); Ve0420 (x, y) = V444 (4*t, 2*s + 1) em que Ve0420 é um meio plano superior do plano V do segundo quadro com campos pares e V444 é parte do plano V do primeiro quadro, onde t (00, m/4-1), s ε (0, n/2-1); Ue/420 (x, y) = V444 (4*t + 2,2*s) em que Ue/420 é uma metade do plano inferior do plano U do segundo quadro com campos pares, e V444 é parte do plano V do primeiro quadro, onde t ε0O, m/4- -), s e 0O,/i/^-1); Ve/420 (x, y) = V444 (4*t + 2,2*s +1) em que Ve/420 é um meio plano inferior do plano V do segundo quadro com campos pares e V444 é parte do plano V do primeiro quadro, onde t (00, m/4-1), s ε (0, n/2-1); Yo0420 (x, y) = Y444 (2*t + 1, s) onde Yo0420 é uma metade do plano superior do plano Y do segundo quadro com campos ímpares e Y444 é todo o plano Y do primeiro quadro, onde t (0, m/2-1), s s(0, 1-111); Yo1420 (x, y) = U444 (2*t + 1, s) onde Yo1420 é uma metade do plano inferior do plano Y do segundo quadro com campos ímpares, o segundo YUV 4:2:0, e U444 é todo o plano U do primeiro quadro, onde t*(0, m/-1), s*(0, n-1); Uo0420 (x, y) = V444 (4*t + 1,2*s) onde Uo0420 é uma me- tade do plano superior do plano U do segundo quadro com campos ímpares, e V444 é parte do plano V do primeiro quadro, onde t ( (0, m/4-1), se0O,n/-1-)); Vo0420 (x, y) = V444 (4*t + -,2*s + -) onde Vo0420 é uma metade do plano superior do plano V do segundo quadro com campos ímpares e V444 é parte do plano V do primeiro quadro, onde t ( ,0, m/4-1), s e (0./I/2-1 ); Uo-420 (x, y) = V444 (4*t + 3,2*s) em que Uo-420 é um plano da metade inferior do plano U do segundo quadro com campos ímpares e V444 é parte do plano V do primeiro quadro, onde t ( ,0, ^4--), se^.n^-) ); Vo-420 (x, y) = V444 (4*t + 3,2*s + -) onde Vo-420 é um plano da metade inferior do plano V do segundo quadro com campos ímpares e V444 é parte do plano V dos primeiros quadros, onde t e0O, m/4-1), SK0O, n/2-)).
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/736,688 US8817179B2 (en) | 2013-01-08 | 2013-01-08 | Chroma frame conversion for the video codec |
US13/736,688 | 2013-01-08 | ||
PCT/US2014/010394 WO2014109998A1 (en) | 2013-01-08 | 2014-01-07 | Method for converting the format of a frame into a chroma subsampling format |
Publications (3)
Publication Number | Publication Date |
---|---|
BR112015016316A2 BR112015016316A2 (pt) | 2017-07-11 |
BR112015016316A8 BR112015016316A8 (pt) | 2017-11-07 |
BR112015016316B1 true BR112015016316B1 (pt) | 2023-04-11 |
Family
ID=50029250
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
BR112015016316-5A BR112015016316B1 (pt) | 2013-01-08 | 2014-01-07 | Método para converter um primeiro quadro tendo um formato de subamostragem de croma yuv 4:4:4 em um segundo quadro tendo um formato de subamostragem de croma yuv 4:2:0 e método para converter um primeiro quadro tendo um formato de subamostragem de croma yuv 4:4:4 em dois segundos quadros tendo ambos um formato de subamostragem de croma yuv 4: 2:0 |
Country Status (5)
Country | Link |
---|---|
US (1) | US8817179B2 (pt) |
EP (1) | EP2944088B1 (pt) |
CN (1) | CN104995918B (pt) |
BR (1) | BR112015016316B1 (pt) |
WO (1) | WO2014109998A1 (pt) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9979960B2 (en) | 2012-10-01 | 2018-05-22 | Microsoft Technology Licensing, Llc | Frame packing and unpacking between frames of chroma sampling formats with different chroma resolutions |
US9661340B2 (en) | 2012-10-22 | 2017-05-23 | Microsoft Technology Licensing, Llc | Band separation filtering / inverse filtering for frame packing / unpacking higher resolution chroma sampling formats |
USRE48920E1 (en) * | 2014-02-21 | 2022-02-01 | Lattice Semiconductor Corporation | Adaptive processing of video streams with reduced color resolution |
US9749646B2 (en) | 2015-01-16 | 2017-08-29 | Microsoft Technology Licensing, Llc | Encoding/decoding of high chroma resolution details |
US9854201B2 (en) | 2015-01-16 | 2017-12-26 | Microsoft Technology Licensing, Llc | Dynamically updating quality to higher chroma sampling rate |
US10575007B2 (en) | 2016-04-12 | 2020-02-25 | Microsoft Technology Licensing, Llc | Efficient decoding and rendering of blocks in a graphics pipeline |
US20170300312A1 (en) | 2016-04-13 | 2017-10-19 | Microsoft Technology Licensing, Llc | Progressive updates with motion |
WO2017211306A1 (zh) * | 2016-06-08 | 2017-12-14 | 同济大学 | 视频数据压缩码流的解码、视频数据的编码方法及装置 |
US10157480B2 (en) | 2016-06-24 | 2018-12-18 | Microsoft Technology Licensing, Llc | Efficient decoding and rendering of inter-coded blocks in a graphics pipeline |
US11197010B2 (en) | 2016-10-07 | 2021-12-07 | Microsoft Technology Licensing, Llc | Browser-based video decoder using multiple CPU threads |
US10368080B2 (en) | 2016-10-21 | 2019-07-30 | Microsoft Technology Licensing, Llc | Selective upsampling or refresh of chroma sample values |
CN107948652B (zh) * | 2017-11-21 | 2021-04-13 | 海信视像科技股份有限公司 | 一种进行图像转换的方法和设备 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5692063A (en) | 1996-01-19 | 1997-11-25 | Microsoft Corporation | Method and system for unrestricted motion estimation for video |
US6529244B1 (en) | 1999-12-22 | 2003-03-04 | International Business Machines Corporation | Digital video decode system with OSD processor for converting graphics data in 4:4:4 format to 4:2:2 format by mathematically combining chrominance values |
US6859235B2 (en) | 2001-05-14 | 2005-02-22 | Webtv Networks Inc. | Adaptively deinterlacing video on a per pixel basis |
US7136417B2 (en) | 2002-07-15 | 2006-11-14 | Scientific-Atlanta, Inc. | Chroma conversion optimization |
US7474355B2 (en) | 2003-08-06 | 2009-01-06 | Zoran Corporation | Chroma upsampling method and apparatus therefor |
US20050129130A1 (en) | 2003-12-10 | 2005-06-16 | Microsoft Corporation | Color space coding framework |
US8942289B2 (en) * | 2007-02-21 | 2015-01-27 | Microsoft Corporation | Computational complexity and precision control in transform-based digital media codec |
ES2357371T3 (es) * | 2007-07-05 | 2011-04-25 | Siemens Industry, Inc. | Sistema y método de procesamiento de datos de imagen. |
CN101742317B (zh) * | 2009-12-31 | 2012-03-28 | 北京中科大洋科技发展股份有限公司 | 一种带阿尔法透明通道的视频压缩编码方法 |
US8625666B2 (en) | 2010-07-07 | 2014-01-07 | Netzyn, Inc. | 4:4:4 color space video with 4:2:0 color space video encoders and decoders systems and methods |
-
2013
- 2013-01-08 US US13/736,688 patent/US8817179B2/en active Active
-
2014
- 2014-01-07 BR BR112015016316-5A patent/BR112015016316B1/pt active IP Right Grant
- 2014-01-07 WO PCT/US2014/010394 patent/WO2014109998A1/en active Application Filing
- 2014-01-07 CN CN201480008516.9A patent/CN104995918B/zh active Active
- 2014-01-07 EP EP14701850.1A patent/EP2944088B1/en active Active
Also Published As
Publication number | Publication date |
---|---|
BR112015016316A2 (pt) | 2017-07-11 |
CN104995918A (zh) | 2015-10-21 |
CN104995918B (zh) | 2019-05-17 |
EP2944088B1 (en) | 2017-03-15 |
US20140192261A1 (en) | 2014-07-10 |
EP2944088A1 (en) | 2015-11-18 |
WO2014109998A1 (en) | 2014-07-17 |
BR112015016316A8 (pt) | 2017-11-07 |
US8817179B2 (en) | 2014-08-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
BR112015016316B1 (pt) | Método para converter um primeiro quadro tendo um formato de subamostragem de croma yuv 4:4:4 em um segundo quadro tendo um formato de subamostragem de croma yuv 4:2:0 e método para converter um primeiro quadro tendo um formato de subamostragem de croma yuv 4:4:4 em dois segundos quadros tendo ambos um formato de subamostragem de croma yuv 4: 2:0 | |
JP2020141416A (ja) | ハイブリッド上位互換性のあるデータストリームをデコードするための方法 | |
US10687070B2 (en) | Hierarchical inter-layer prediction in multi-loop scalable video coding | |
US9247264B2 (en) | Method and system for parallel encoding of a video | |
Pfaff et al. | Neural network based intra prediction for video coding | |
US20160323600A1 (en) | Methods and Apparatus for Use of Adaptive Prediction Resolution in Video Coding | |
BR112017004490B1 (pt) | Método para a construção de uma tabela de hash para correspondência de bloco baseada em hash, dispositivo de computação e meio de armazenamento legível por computador | |
JP2017118492A (ja) | Luma値を決定するための方法、装置、およびシステム | |
TWI680674B (zh) | 在位元流中將低動態範圍圖像之圖像/視訊格式及從該低動態範圍圖像及照明圖像中得到之解碼高動態範圍圖像之圖像/視訊格式以信號表示之方法及裝置 | |
TW201842771A (zh) | 用於顯示串流壓縮之中點預測誤差擴散 | |
Kim et al. | A high-throughput hardware design of a one-dimensional SPIHT algorithm | |
US9324162B2 (en) | Image processing apparatus, method, and program | |
US8638393B2 (en) | Apparatus and method for converting image in an image processing system | |
CN105874800B (zh) | 句法解析装置和句法解析方法 | |
TWI540902B (zh) | 用於平行交換視訊資料之方法、裝置及系統 | |
Ding et al. | An FPGA-friendly CABAC-encoding architecture with dataflow modelling programming | |
EP3369241B1 (en) | Method and device for selecting a process to be applied on video data from a set of candidate processes driven by a common set of information data | |
CN112788024A (zh) | 一种用于8k超高清视频的实时编码的方法及系统 | |
Mody | Hevc video encoder & decoder architecture for multi-cores | |
Cunha et al. | Data compression algorithms for biomedical images | |
JP2011164190A (ja) | 画像処理装置および画像表示装置 | |
CN203859835U (zh) | 一种支持监控视频快速解码的装置 | |
Qin et al. | A novel parallel pipeline structure of VP9 decoder | |
Gao et al. | The Research of High-Definition Video Processing System Based on SOC | |
WO2024073066A1 (en) | Region of interest coding for vcm |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
B25A | Requested transfer of rights approved |
Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC (US) |
|
B06F | Objections, documents and/or translations needed after an examination request according [chapter 6.6 patent gazette] | ||
B06U | Preliminary requirement: requests with searches performed by other patent offices: procedure suspended [chapter 6.21 patent gazette] | ||
B09A | Decision: intention to grant [chapter 9.1 patent gazette] | ||
B16A | Patent or certificate of addition of invention granted [chapter 16.1 patent gazette] |
Free format text: PRAZO DE VALIDADE: 20 (VINTE) ANOS CONTADOS A PARTIR DE 07/01/2014, OBSERVADAS AS CONDICOES LEGAIS |