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 PDF

Info

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
Application number
BR112015016316-5A
Other languages
English (en)
Other versions
BR112015016316A2 (pt
BR112015016316A8 (pt
Inventor
Lihua Zhu
Sridhar Sankuratri
B. Anil Kumar
Nadim Abdo
Original Assignee
Microsoft Technology Licensing, Llc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Technology Licensing, Llc filed Critical Microsoft Technology Licensing, Llc
Publication of BR112015016316A2 publication Critical patent/BR112015016316A2/pt
Publication of BR112015016316A8 publication Critical patent/BR112015016316A8/pt
Publication of BR112015016316B1 publication Critical patent/BR112015016316B1/pt

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/64Circuits for processing colour signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods 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/186Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/88Methods 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

ANTECEDENTES
[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.
BREVE SUMÁRIO
[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.
BREVE DESCRIÇÃO DOS DESENHOS
[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.
DESCRIÇÃO DETALHADA
[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-)).
BR112015016316-5A 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 BR112015016316B1 (pt)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

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