BR112021005393A2 - aparelho de síntese de imagens, aparelho para gerar um fluxo de dados de imagem, método para sintetizar uma imagem, método para gerar um fluxo de dados de imagem e produto de programa de computador - Google Patents

aparelho de síntese de imagens, aparelho para gerar um fluxo de dados de imagem, método para sintetizar uma imagem, método para gerar um fluxo de dados de imagem e produto de programa de computador Download PDF

Info

Publication number
BR112021005393A2
BR112021005393A2 BR112021005393-0A BR112021005393A BR112021005393A2 BR 112021005393 A2 BR112021005393 A2 BR 112021005393A2 BR 112021005393 A BR112021005393 A BR 112021005393A BR 112021005393 A2 BR112021005393 A2 BR 112021005393A2
Authority
BR
Brazil
Prior art keywords
image
parts
depth
pose
depth transition
Prior art date
Application number
BR112021005393-0A
Other languages
English (en)
Inventor
Christiaan Varekamp
Original Assignee
Koninklijke Philips N.V.
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 Koninklijke Philips N.V. filed Critical Koninklijke Philips N.V.
Publication of BR112021005393A2 publication Critical patent/BR112021005393A2/pt

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • G06T15/205Image-based rendering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/111Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation
    • H04N13/117Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation the virtual viewpoint locations being selected by the viewers or determined by viewer tracking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/194Transmission of image signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/30Image reproducers
    • H04N13/332Displays for viewing with the aid of special glasses or head-mounted displays [HMD]
    • H04N13/344Displays for viewing with the aid of special glasses or head-mounted displays [HMD] with head-mounted left-right displays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/30Image reproducers
    • H04N13/366Image reproducers using viewer tracking
    • H04N13/383Image reproducers using viewer tracking for tracking with gaze detection, i.e. detecting the lines of sight of the viewer's eyes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/21805Source of audio or video content, e.g. local disk arrays enabling multiple viewpoints, e.g. using a plurality of cameras
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6587Control parameters, e.g. trick play commands, viewpoint selection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/816Monomedia components thereof involving special video data, e.g 3D video
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2213/00Details of stereoscopic systems
    • H04N2213/003Aspects relating to the "2D+depth" image format

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Computing Systems (AREA)
  • Geometry (AREA)
  • Computer Graphics (AREA)
  • General Physics & Mathematics (AREA)
  • Processing Or Creating Images (AREA)
  • Image Processing (AREA)

Abstract

APARELHO DE SÍNTESE DE IMAGENS, APARELHO PARA GERAR UM FLUXO DE DADOS DE IMAGEM, MÉTODO PARA SINTETIZAR UMA IMAGEM, MÉTODO PARA GERAR UM FLUXO DE DADOS DE IMAGEM E PRODUTO DE PROGRAMA DE COMPUTADOR. A presente invenção se refere a um aparelho de síntese de imagens que compreende um receptor (301) para receber de uma fonte de imagens partes de imagens e dados de profundidade associados de imagens que representam uma cena a partir de poses de visualização diferentes. Um armazenamento (311) armazena uma métrica de transição de profundidade para cada parte de imagem de um conjunto de partes de imagens, sendo que a métrica de transição de profundidade para uma parte de imagem é indicativa de uma direção de uma transição de profundidade na parte de imagem. Um determinador (305) determina uma pose de visualização de renderização e um sintetizador de imagem (303) sintetiza ao menos uma imagem a partir da parte de imagem recebida. Um seletor é disposto para selecionar uma primeira parte de imagem do conjunto de partes de imagens em resposta à métrica de transição de profundidade e um recuperador (309) recupera a primeira parte de imagem a partir da fonte de imagens. A síntese de uma parte de imagem para a pose de visualização de renderização é baseada na primeira parte de imagem.

Description

APARELHO DE SÍNTESE DE IMAGENS, APARELHO PARA GERAR UM FLUXO DE DADOS DE IMAGEM, MÉTODO PARA SINTETIZAR UMA IMAGEM, MÉTODO PARA GERAR UM FLUXO DE DADOS DE IMAGEM E PRODUTO DE
PROGRAMA DE COMPUTADOR Campo da invenção
[001] A invenção se refere à síntese de imagens e à geração de um fluxo de dados de imagem para a dita síntese e, em particular, mas não exclusivamente, à síntese de imagens com base em partes de imagens para, por exemplo, aplicações e serviços de realidade virtual. Antecedentes da invenção
[002] A variedade e o alcance de aplicações de imagem e vídeo aumentaram substancialmente nos últimos anos com novos serviços e maneiras de usar e consumir vídeo sendo continuamente desenvolvidos e introduzidos.
[003] Por exemplo, um serviço cada vez mais popular é o fornecimento de sequências de imagens de tal forma que o espectador seja capaz de interagir de maneira ativa e dinâmica com o sistema para alterar parâmetros da renderização. Um recurso muito interessante em muitas aplicações é a capacidade de se alterar a posição de visualização e a direção de visualização efetivas (a pose de visualização) do espectador como, por exemplo, possibilitando que o espectador se mova e “olhe ao redor” na cena que é apresentada.
[004] Tal recurso pode, especificamente, possibilitar que uma experiência de realidade virtual seja fornecida a um usuário. Isso pode possibilitar que o usuário se mova de forma (relativamente) livre em um ambiente virtual e altere dinamicamente sua posição e a direção na qual ele está olhando. Geralmente, tais aplicações de realidade virtual são baseadas em um modelo tridimensional da cena, com o modelo sendo calculado dinamicamente para fornecer a visualização específica solicitada. Essa abordagem é bem conhecida, por exemplo, a partir de aplicativos de jogos para computadores e consoles, como na categoria de jogos de tiro em primeira pessoa.
[005] É também desejável, em particular, para aplicações de realidade virtual, que a imagem que é apresentada seja uma imagem tridimensional. De fato, para otimizar a imersão do espectador, é geralmente preferencial que o usuário experimente a cena apresentada como uma cena tridimensional. De fato, uma experiência de realidade virtual deve, de preferência, possibilitar que um usuário selecione sua própria posição, ponto de visualização da câmera e momento no tempo em relação a um mundo virtual.
[006] Uma grande questão no suporte de vários serviços com base, em particular, em representações tridimensionais de uma cena é que uma grande quantidade de dados é necessária. Isso resulta em altos requisitos de recursos, como uma necessidade de grandes recursos de armazenamento. Entretanto, em muitos cenários, a restrição maior não é os requisitos de processamento ou armazenamento, mas os requisitos de comunicação. Se for exigido que os dados que representam a cena precisam ser comunicados através de um canal de comunicação limitado por largura de banda (tanto externo como interno), é altamente desejável tentar reduzir a quantidade de dados que precisam ser comunicados.
[007] Por exemplo, em muitos cenários e para muitas aplicações, pode ser usada uma abordagem de servidor cliente em que um cliente remoto que executa, por exemplo,
uma aplicação de realidade virtual é acoplado a um serviço central que fornece os dados de cena necessários através de um enlace limitado por largura de banda. Uma representação de múltiplas visualizações estará, entretanto, tipicamente associada a uma alta taxa de bits (mesmo sem informações de profundidade, uma alta taxa de bits é necessária, e de fato essa taxa pode muitas vezes ser ainda maior nesse caso, uma vez que serão necessárias mais visualizações). Por exemplo, a reprodução de realidade virtual com liberdade de movimento irá exigir visualizações diferentes de uma cena com a velocidade que o espectador está se movendo através do espaço 3D. O desafio de fornecer dados suficientes através de tal canal de comunicação é muito difícil de se abordar na prática
[008] Vários formatos foram propostos para a transmissão contínua eficaz de informações de geometria e textura 3D através de canais de comunicação limitados por largura de banda, e especialmente para uso com redes, como a Internet. Por exemplo, o padrão de formato de mídia unidirecional (OMAF - “Omnidirectional MediA Format”) de MPEG incluirá a transmissão contínua lado a lado de vídeo 360 (3 Graus de Liberdade (DoF))) que faz uso da transmissão contínua adaptativa dinâmica através de HTTP (MPEG DASH). Uma versão futura de OMAF é esperada para suportar paralaxe de movimento limitado (3DoF+).
[009] Conforme mencionado, na prática, o problema mais urgente em múltiplas visualizações com codificação de profundidade muitas vezes não é o requisito de armazenamento, mas sim a latência e largura de banda de transmissão. Para se ter uma experiência suave, as imagens devem chegar em tempo ao fone de ouvido. Entretanto, embora os formatos e codificações desenvolvidos busquem reduzir a taxa de dados, ainda é tipicamente a principal limitação sobre a qualidade e experiência de usuário que pode ser alcançada no lado de cliente.
[010] Além disso, a fim de manter uma qualidade suficientemente alta das imagens geradas, é importante que dados adequados estejam disponíveis para a síntese de visualização. Em particular, a síntese de uma imagem a partir de um ponto de visualização diferente causa mudança de paralaxe que depende da profundidade do objeto. Consequentemente, a mudança pode causar desobstrução (“desoclusão”) que pode revelar espaços vazios na imagem que precisam ser preenchidos pelos dados de outros pontos de visualização ou por extrapolação que, entretanto, tende a estar abaixo do ideal. Dessa forma, há um equilíbrio de importância crítica entre a taxa de dados necessária e a quantidade de dados fornecida ao sintetizador.
[011] Por conseguinte, uma abordagem aprimorada para gerar e usar fluxos de dados de imagem seria vantajosa. Em particular, seria vantajosa uma abordagem que possibilite uma operação melhorada, representação aprimorada de uma cena, flexibilidade aumentada, implementação facilitada, operação facilitada, taxa reduzida de dados, armazenamento reduzido de dados, distribuição e/ou requisitos de recursos de processamento, adaptabilidade aprimorada, melhor qualidade das imagens e/ou desempenho aprimorado. Sumário da invenção
[012] Consequentemente, a invenção busca, de preferência, mitigar, aliviar ou eliminar uma ou mais das desvantagens mencionadas acima, individualmente ou em qualquer combinação.
[013] De acordo com um aspecto da invenção, é fornecido um aparelho de síntese de imagens que compreende: um receptor para receber, de uma fonte de imagens, partes de imagens recebidas e dados de profundidade associados, sendo que as partes de imagens são partes de imagens que representam uma cena formada a partir de poses de visualização diferentes; um determinador para determinar uma pose de visualização de renderização; um dispositivo de armazenamento que compreende uma métrica de transição de profundidade para cada parte de imagem de um conjunto de partes de imagens das partes de imagens recebidas, sendo que a métrica de transição de profundidade para uma parte de imagem indica uma direção de uma transição de profundidade na parte de imagem; um seletor para selecionar uma primeira parte de imagem do conjunto de partes de imagens em resposta à pose de visualização de renderização e à métrica de transição de profundidade; e um recuperador para recuperar a primeira parte de imagem a partir da fonte de imagens; um sintetizador de imagem para sintetizar ao menos uma imagem dentre as partes de imagens recebidas que incluem a primeira parte de imagem.
[014] A invenção pode fornecer operação e/ou desempenho aprimorados para um sistema de síntese e distribuição de imagens, como, por exemplo, em um sistema de vídeo de pontos de visualização livres. A abordagem pode proporcionar um desempenho particularmente vantajoso para uma experiência de realidade virtual/artificial/aumentada em que as vistas são adaptadas. A abordagem pode fornecer uma complexidade reduzida em muitos cenários. Ela pode fornecer, em muitos cenários, uma taxa de dados substancialmente reduzida para o fluxo de bits e/ou uma qualidade aprimorada. Um equilíbrio entre qualidade aprimorada e taxa de dados pode ser alcançado em muitos cenários.
[015] Em muitas modalidades, a abordagem pode, em particular, reduzir ou mitigar erros e artefatos de desobstrução resultantes da síntese de imagens.
[016] Os dados de profundidade associados para uma parte de imagem podem ser dados de profundidade que indicam distâncias a partir de um ponto de visualização para a parte de imagem a objetos na parte de imagem.
[017] O sintetizador de imagem pode ser disposto para sintetizar uma região/parte de imagem de uma imagem sintetizada a partir da primeira parte de imagem. A síntese pode incluir uma mudança de pose de visualização a partir da pose de visualização da primeira parte de imagem à pose de visualização de renderização.
[018] A métrica de transição de profundidade para a parte de imagem pode ser indicativa de uma direção da transição de profundidade em um plano de imagem, que pode ser especificamente o plano de imagem (ou um plano paralelo) da parte de imagem/da imagem da parte de imagem. A direção pode ser uma direção de plano de imagem de uma transição de mais para frente para mais para trás (do primeiro plano para o segundo plano), ou pode, por exemplo, ser uma direção de plano de imagem de uma transição de mais para trás para mais para frente (do segundo plano para o primeiro plano).
[019] A fonte de imagens pode ser uma fonte remota, como um servidor remoto. Uma imagem para uma pose de visualização pode ser tipicamente dividida em uma pluralidade de partes de imagens, mas uma ou mais imagens podem ser divididas em uma única parte de imagem, isto é, uma parte de imagem pode corresponder a uma imagem inteira para uma pose de visualização.
[020] O conjunto de partes de imagens é um conjunto de partes de imagens recebidas pelo receptor e pode ser um conjunto completo ou um subconjunto do dito conjunto.
[021] A transição de passo pode ser uma transição dominante ou a maior transição de profundidade na parte de imagem.
[022] Em algumas modalidades, o seletor pode ser disposto adicionalmente para selecionar o segundo subconjunto de partes de imagens em resposta a uma medida de visibilidade do conjunto de partes de imagens para uma pose de visualização alvo.
[023] Em algumas modalidades, as partes de imagens são partes de imagens pré-codificadas.
[024] Em algumas modalidades, o conjunto de partes de imagens compreende faces de projeções poliédricas da cena para poses de visualização diferentes.
[025] Em algumas modalidades, as partes de imagens correspondem a um particionamento predeterminado das imagens.
[026] Em algumas modalidades, o aparelho compreende adicionalmente um particionador para gerar ao menos algumas partes de imagens do conjunto de partes de imagens em resposta a um particionamento das imagens com base em ao menos um dentre valores de pixel das imagens e valores de profundidade para as imagens. Em algumas modalidades, ao menos algumas partes de imagens estão sobrepostas.
[027] De acordo com uma característica opcional da invenção, a métrica de transição de profundidade é indicativa de um tamanho da transição de profundidade.
[028] Isso pode proporcionar um desempenho aprimorado em muitas modalidades. O tamanho da transição de profundidade pode, por exemplo, ser um valor absoluto de um passo de profundidade ou uma magnitude de um gradiente de profundidade ou vetor de gradiente de profundidade.
[029] De acordo com uma característica opcional da invenção, o seletor é disposto para selecionar adicionalmente a primeira parte de imagem em resposta a diferenças entre uma pose de visualização das partes de imagens do conjunto de partes de imagens e a pose de visualização de renderização.
[030] Isso pode melhorar ainda mais o desempenho e pode, por exemplo, reduzir erros ou artefatos resultantes de operações de grandes mudanças de visualização.
[031] De acordo com uma característica opcional da invenção, o seletor é disposto para determinar o conjunto de partes de imagens submetidas a uma restrição em que uma diferença entre a pose de visualização de qualquer parte de imagem pertencente ao conjunto de partes de imagens e a pose de visualização de renderização está abaixo de um limiar.
[032] Isso pode melhorar ainda mais o desempenho, ao mesmo tempo em que mantém baixa complexidade e requisitos de recursos.
[033] De acordo com uma característica opcional da invenção, o seletor é disposto para determinar o conjunto de partes de imagens como partes de imagens que representam uma mesma região da cena como uma seção de imagem de uma imagem a ser sintetizada pelo sintetizador de imagem, sendo que as partes de imagens do conjunto de partes de imagens representam a região de imagem formada a partir de poses de visualização diferentes.
[034] A abordagem pode proporcionar síntese aprimorada de imagens e pode, particularmente em muitos cenários, reduzir erros e artefatos que ocorrem devido à desobstrução.
[035] De acordo com uma característica opcional da invenção, o conjunto de partes de imagens compreende partes de imagens de poses de visualização diferentes e que correspondem a uma mesma parte de uma imagem a ser sintetizada.
[036] A abordagem pode proporcionar síntese aprimorada de imagens e pode, particularmente em muitos cenários, reduzir erros e artefatos que ocorrem devido à desobstrução.
[037] De acordo com uma característica opcional da invenção, o seletor é disposto para tender a seleção da primeira parte de imagem em direção a uma parte de imagem para a qual uma transição de profundidade da frente para trás da transição de profundidade está em uma direção que é oposta a uma direção de uma pose de visualização da parte de imagem para a pose de visualização de renderização.
[038] Isso pode proporcionar um desempenho particularmente eficiente e pode, em muitos cenários, fornecer uma abordagem particularmente eficiente para reduzir erros e artefatos que ocorrem devido à desobstrução durante mudanças de pose de visualização.
[039] As direções podem ser direções de plano de imagem e, especificamente, podem ser direções de plano de imagem no plano de imagem (ou um plano paralelo) da parte de imagem/imagem da parte de imagem. A direção de uma transição de profundidade da frente para trás de uma parte de imagem pode ser uma direção no plano de imagem de uma transição de um objeto/área/pixel mais em primeiro plano para um objeto/área/pixel mais em segundo plano. A direção de uma pose de visualização da parte de imagem para a pose de visualização de renderização pode ser uma direção no plano de imagem da parte de imagem/imagem. Pode ser uma direção de uma projeção da pose de visualização ao plano de imagem ao longo de uma direção ortogonal ao plano de imagem até uma projeção da pose de visualização de renderização ao plano de imagem ao longo de uma direção ortogonal ao plano de imagem. A tendência pode depender de um grau de correlação/alinhamento entre as direções no plano da imagem.
[040] Será reconhecido que direções e pontos no plano de imagem não precisam ser explicitamente calculados ou determinados para executar a tendência.
[041] O seletor pode ser disposto para tender a seleção executando a seleção em resposta a uma função de custo que tem um valor crescente para um alinhamento crescente entre as direções da transição da frente para trás e da pose de visualização para renderizar a diferença de pose de visualização (por exemplo, no plano de imagem).
[042] De acordo com uma característica opcional da invenção, a síntese da ao menos uma imagem compreende sintetizar uma parte de imagem da ao menos uma imagem obtida da primeira parte de imagem.
[043] A abordagem pode proporcionar síntese aprimorada de imagens para diferentes poses de visualização de renderização.
[044] De acordo com uma característica opcional da invenção, a métrica de transição de profundidade representa uma média de gradientes de profundidade que excedem um limiar.
[045] Isso pode proporcionar um desempenho particularmente vantajoso em muitas modalidades.
[046] De acordo com um aspecto da invenção, é fornecido um aparelho para gerar um fluxo de dados de imagem, sendo que o aparelho compreende: um receptor para receber de uma fonte remota uma solicitação de parte de imagem; um dispositivo de armazenamento para armazenar um conjunto de partes de imagens e dados de profundidade associados que representam uma cena formada a partir de poses de visualização diferentes; um gerador de métricas para fornecer uma métrica de transição de profundidade para cada parte de imagem do conjunto de partes de imagens, sendo que a métrica de transição de profundidade para uma parte de imagem é indicativa de uma direção de uma transição de profundidade na parte de imagem; um seletor para selecionar partes de imagens a partir do conjunto de partes de imagens em resposta à solicitação de parte de imagem e às métricas de transição de profundidade; e um transmissor para transmitir à fonte remota partes de imagens selecionadas e profundidade associada.
[047] De acordo com uma característica opcional da invenção, o transmissor é disposto para transmitir à fonte remota as métricas de transição de profundidade do conjunto de partes de imagens.
[048] De acordo com uma característica opcional da invenção, a solicitação de parte de imagem compreende uma indicação de pose de visualização, e o seletor é disposto para selecionar partes de imagens em resposta às métricas de transição de profundidade e à indicação de pose de visualização.
[049] De acordo com um aspecto da invenção, é fornecido um método para sintetizar uma imagem, sendo que o método compreende: receber, de uma fonte de imagens, partes de imagens recebidas e dados de profundidade associados, sendo que as partes de imagens são partes de imagens que representam uma cena formada a partir de poses de visualização diferentes; determinar uma pose de visualização de renderização; armazenar uma métrica de transição de profundidade para cada parte de imagem de um conjunto de partes de imagens das partes de imagens recebidas, sendo que a métrica de transição de profundidade para uma parte de imagem indica uma direção de uma transição de profundidade na parte de imagem; selecionar uma primeira parte de imagem do conjunto de partes de imagens em resposta à pose de visualização de renderização e à métrica de transição de profundidade; recuperar a primeira parte de imagem a partir da fonte de imagens; e sintetizar ao menos uma imagem dentre as partes de imagens recebidas que incluem a primeira parte de imagem.
[050] De acordo com um aspecto da invenção, é fornecido um método para gerar um fluxo de dados de imagem, sendo que o método compreende: receber de uma fonte remota uma solicitação de parte de imagem; armazenar um conjunto de partes de imagens e dados de profundidade associados que representam uma cena formada a partir de poses de visualização diferentes; fornecer uma métrica de transição de profundidade para cada parte de imagem do conjunto de partes de imagens, sendo que a métrica de transição de profundidade para uma parte de imagem é indicativa de uma direção de uma transição de profundidade na parte de imagem; selecionar partes de imagens a partir do conjunto de partes de imagens em resposta à solicitação de parte de imagem e às métricas de transição de profundidade; e transmitir à fonte remota partes de imagens selecionadas e profundidade associada.
[051] Esses e outros aspectos, recursos e vantagens da invenção ficarão evidentes e serão elucidados com referência às uma ou mais modalidades descritas a seguir. Breve descrição dos desenhos
[052] As modalidades da invenção serão descritas, apenas a título de exemplo, com referência aos desenhos, nos quais: a Figura 1 ilustra um exemplo de elementos de um sistema de processamento de imagem de acordo com algumas modalidades da invenção; a Figura 2 ilustra um exemplo de elementos de um aparelho gerador de fluxo de dados de imagem de acordo com algumas modalidades da invenção; a Figura 3 ilustra um exemplo de cenas e propriedades de qualidade de previsão associadas; a Figura 4 ilustra um exemplo de imagens de referência/âncora e mapas de profundidade associados; a Figura 5 ilustra um exemplo de imagens de referência/âncora e uma imagem sintetizada; a Figura 6 ilustra um exemplo de imagens de referência/âncora e uma imagem sintetizada; a Figura 7 ilustra um exemplo de imagens de referência/âncora e uma imagem sintetizada; a Figura 8 ilustra um exemplo de uma imagem sintetizada; e, a Figura 9 ilustra um exemplo de imagens de referência/âncora e uma imagem sintetizada. Descrição detalhada de algumas modalidades da invenção
[053] A descrição a seguir concentra-se em modalidades da invenção aplicáveis à síntese de imagens e à geração de um fluxo de dados de imagem para uma aplicação de realidade virtual. Entretanto, será reconhecido que a invenção não se limita a essa aplicação, mas pode ser aplicada em, por exemplo, muitas outras aplicações diferentes de processamento e renderização de imagens.
[054] A Figura 1 ilustra um exemplo de um sistema que pode incorporar exemplos e variantes de modalidades do conceito da invenção.
[055] No exemplo, um cliente sob a forma de um aparelho de síntese de imagens 101 é disposto para gerar imagens que representam uma cena a partir de diferentes pontos de visualização, isto é, podem ser geradas imagens que correspondem a janelas de visão diferentes para poses de visualização diferentes da cena. O aparelho de síntese de imagens 101 é disposto para receber um fluxo de dados de imagem que compreende partes de imagens, bem como a profundidade associada, fornecendo assim uma representação de imagem tridimensional parcial de uma cena. Ele pode, então, com base nos dados recebidos, gerar as imagens adequadas que correspondem à determinada pose e janela de visão. No exemplo, o fluxo de dados de imagem é recebido de um aparelho gerador de fluxo de dados de imagem 103 que opera como um servidor remoto. O aparelho gerador de fluxo de dados de imagem 103 é disposto para fornecer o fluxo de dados de imagem através de uma rede 105 que pode ser, por exemplo, a Internet. A disposição pode corresponder a uma disposição cliente- servidor e, consequentemente, o aparelho de síntese de imagens 101 será chamado também de cliente e o aparelho de geração de fluxo de dados 103 será chamado também de servidor.
[056] No exemplo específico, o aparelho gerador de fluxo de dados de imagem 103 é um servidor de realidade virtual que fornece dados de imagem tridimensional representando um ambiente tridimensional para que o aparelho de síntese de imagens 101 gere vistas que correspondem, por exemplo, ao movimento de um usuário virtual no ambiente.
[057] Neste campo, os termos “posicionamento” ou “uma pose” são usados como um termo comum para a posição e/ou direção/orientação e a combinação da posição e direção/orientação de, por exemplo, um objeto, uma câmera ou uma visualização é de fato tipicamente chamada de “uma pose” ou “um posicionamento”. Dessa forma, uma indicação de posicionamento ou pose pode compreender seis valores/componentes/graus de liberdade com cada valor/componente descrevendo tipicamente uma propriedade individual da posição/localização ou da orientação/direção do objeto correspondente. Certamente, em muitas situações, um posicionamento ou pose pode ser considerado ou representado com um menor número de componentes, por exemplo se um ou mais componentes forem considerados fixos ou irrelevantes (por exemplo, se todos os objetos forem considerados como estando na mesma altura e tiverem uma orientação horizontal, quatro componentes podem fornecer uma representação completa da pose de um objeto). No texto a seguir, o termo “pose” é usado para se referir a uma posição e/ou orientação que pode ser representada por um a seis valores (correspondentes ao número máximo de graus de liberdade possíveis). A descrição se concentrará em modalidades e exemplos nos quais uma pose tem o número máximo de graus de liberdade, isto é, três graus de liberdade de cada uma dentre a posição e a orientação resultando em um total de seis graus de liberdade
(6DoF). A pose pode, dessa forma, ser representada por um conjunto ou vetor de seis valores que representam os seis graus de liberdade e, dessa forma, o vetor de pose pode fornecer uma posição tridimensional e/ou uma indicação de direção tridimensional. Entretanto, será reconhecido que, em outras modalidades, a pose pode ser representada por menos valores.
[058] Em muitas aplicações, a representação de imagem tridimensional da cena presente no servidor pode ser gerada a partir de uma captura de uma cena ou de um ambiente do mundo real com o uso, por exemplo, de câmeras detectoras de profundidade. Possibilita-se, com isso, que as propriedades visuais sejam capturadas juntamente com informações tridimensionais. Para capturar uma cena suficientemente, adota- se o uso de um número de capturas muitas vezes muito alto correspondentes a poses de visualização diferentes. Em algumas aplicações, várias centenas ou mesmo milhares de imagens (com informações de profundidade associadas) podem ser usadas para fornecer uma representação precisa e detalhada de toda a cena formada a partir de poses de visualização diferentes.
[059] A representação de dados virtuais de uma cena é um fator de importância crítica no fornecimento de uma experiência de usuário vantajosa. É necessário que os dados que descrevem a cena forneçam uma representação exata tanto das propriedades visuais como das propriedades espaciais. Ao mesmo tempo, é de importância crítica reduzir a quantidade de dados necessária para representar a cena, já que, em muitas aplicações, isso tende a ser um fator limitante para a qualidade que pode ser obtida.
[060] Em particular, é necessário que sejam fornecidas informações suficientes ao aparelho de síntese de imagens 101 para que ele gere localmente imagens adequadas correspondentes às poses de visualização desejadas, por exemplo, realizando mudanças de pontos de visualização, conforme será de conhecimento do versado na técnica. Entretanto, ao mesmo tempo, é necessário que a quantidade de dados transmitidos seja mantida baixa e que a latência seja mantida, tanto quanto possível, em um nível mínimo. Em muitos cenários, a largura de banda de comunicação limitada é o fator restritivo na busca para fornecer uma experiência de usuário de alta qualidade com alta qualidade e baixa latência.
[061] Além disso, a conversão das capturas das câmeras detectoras de profundidade para uma representação de dados do ambiente/cena é quase sempre muito desafiadora e pode introduzir erros ou artefatos. Por exemplo, em algumas aplicações, os dados capturados podem ser usados para desenvolver um modelo tridimensional da cena do mundo real. As imagens de vista para um usuário ao qual é fornecida uma experiência de realidade virtual tridimensional podem, então, ser geradas mediante a avaliação do modelo a partir de um ponto de visualização específico. Em outras aplicações, as imagens para janelas de visão ou pontos de visualização específicos podem ser diretamente geradas a partir das imagens capturadas e das informações de profundidade, por exemplo mediante a seleção de uma ou mais dentre as imagens capturadas mais próximas e a execução de uma mudança do ponto de visualização para que corresponda ao ponto de visualização desejado ou, em alguns casos, mediante o uso direto das imagens capturadas.
[062] No presente caso, a cena é representada no domínio de imagem por um conjunto de imagens juntamente com dados de profundidade. Em muitas modalidades, as imagens podem fornecer informações visuais que refletem a vista de uma determinada pose de visualização e os dados de profundidade podem representar a profundidade de pixels ou objetos na imagem. Especificamente, cada imagem pode corresponder a uma determinada captura para uma determinada pose de visualização para a cena, sendo que os dados de profundidade são um mapa de profundidade de acompanhamento, conforme será conhecido por um versado na técnica. Em algumas modalidades, as imagens podem ser, por exemplo, imagens de atlas de textura ou mapas de textura, e os dados de profundidade podem ser malhas que fornecem uma representação de textura e malha da cena, conforme será descrito em mais detalhes posteriormente.
[063] O aparelho gerador de fluxo de dados de imagem 103 pode, consequentemente, compreender imagens e dados de profundidade associados que representam a cena a partir de um conjunto de poses de visualização, e especificamente, as imagens e dados de profundidade podem ser dados capturados. O aparelho gerador de fluxo de dados de imagem 103, consequentemente, armazena uma representação da cena 3D por um conjunto de imagens com profundidade para um conjunto discreto de poses de visualização. As poses de visualização para as quais tais imagens estão disponíveis serão referidas também como poses de visualização de referência ou de âncora, e as imagens serão referidas como imagens de visualização de referência ou de âncora. Em sistemas em que a cena é descrita/referida por dados de visualização armazenados para pontos de visualização de referência/posições/poses distintos, esses estão no campo também chamado de pontos de visualização/posições/poses de âncora, e a seguir, os termos “referência” e “âncora” serão usados como equivalentes/idênticos. Tipicamente, quando um ambiente do mundo real é capturado a partir de imagens de diferentes pontos/posições/poses, esses pontos/posições/poses de captura são também os pontos/posições/poses de referência/âncora.
[064] As imagens de visualização de referência/âncora podem, em algumas modalidades, por exemplo, ser imagens semiesféricas completas que cobrem, por exemplo, uma faixa de azimute de 360° e uma faixa de elevação de 180°. Em outras modalidades, as imagens de âncora podem cobrir ângulos de visão menores como, por exemplo, uma faixa de azimute de 360° ou 180° com uma faixa de elevação de 40°.
[065] As imagens de âncora podem, ainda, ser divididas em partes de imagens e, tipicamente, o aparelho gerador de fluxo de dados de imagem 103 pode armazenar um grande conjunto de tais partes de imagens de âncora para as poses de âncora. Em algumas modalidades, as partes de imagens podem ser geradas mediante a segmentação (ativa) ou a divisão de imagens de âncora. Em outras modalidades, uma parte de imagem pode, por exemplo, compreender todos os dados disponíveis para uma dada pose de âncora, isto é, a parte de imagem pode ser toda a imagem para uma determinada pose de âncora. As partes de imagens podem ser especificamente geradas por ladrilhamento (disposição em mosaico) das imagens de visualização de âncora. Alternativamente, podem ser usadas partes de imagens sobrepostas.
[066] As partes de imagens podem ainda ser, com frequência, relativamente grandes e, por exemplo, as imagens de âncora podem ser divididas entre 4 e 20 partes de imagens/ladrilhos menores. Por exemplo, cada parte de imagem pode ter um ângulo azimute de 60° e um ângulo de elevação de 22,5°.
[067] O aparelho gerador de fluxo de dados de imagem 103 compreende, consequentemente, uma representação de imagem tridimensional (potencialmente parcial, mas muitas vezes substancialmente completa) da cena por um conjunto de partes de imagens e mapas de profundidade associados. O aparelho gerador de fluxo de dados de imagem 103 pode fornecer dados relevantes ao aparelho de síntese de imagens 101 possibilitando com isso sintetizar localmente imagens a partir de uma pose de visualização de renderização desejada que pode tipicamente diferir da pose de visualização de referência/âncora. Adicionalmente, o sistema pode suportar uma operação flexível e dinâmica onde os dados de imagem relevantes são continuamente transmitidos ao aparelho de síntese de imagens 101 de modo que ele possa realizar a síntese. Dessa forma, o aparelho gerador de fluxo de dados de imagem 103 não transmite meramente todos os dados armazenados ao aparelho de síntese de imagens 101 para processamento. Tal abordagem seria impraticável, pois exigiria que uma quantidade extremamente alta de dados fosse comunicada e armazenada, o que não é viável na maioria das aplicações. Além disso, isso não seria adequado para cenas dinâmicas onde a cena pode mudar.
[068] O aparelho gerador de fluxo de dados de imagem 103 pode receber especificamente uma solicitação de dados do aparelho de síntese de imagens 101, por exemplo, com o aparelho de síntese de imagens 101 fornecendo uma indicação de pose de visualização para que a síntese seja realizada. À medida que a solicitação muda, por exemplo, devido ao fato de o usuário mover sua cabeça para olhar ao redor, novos dados de imagem são necessários e os mesmos são transmitidos do aparelho gerador de fluxo de dados de imagem 103 para o aparelho de síntese de imagens 101 para possibilitar a síntese das vistas necessárias. Dessa forma, um fluxo contínuo de dados de imagem pode ser gerado pelo aparelho gerador de fluxo de dados de imagem 103 e transmitido ao aparelho de síntese de imagens 101.
[069] Entretanto, em vez de transmitir imagens de âncora inteiras, a abordagem da Figura 1 se baseia no fluxo de dados ser um fluxo de partes de imagens. Especificamente, o aparelho gerador de fluxo de dados de imagem 103 pode transmitir ao aparelho de síntese de imagens 101, quando necessário, partes de imagens adequadas para síntese. A abordagem pode diminuir requisitos de taxa de dados, uma vez que apenas as partes de imagens necessárias precisam ser transmitidas. Ao mesmo tempo, as partes de imagens podem ser suficientemente grandes para fornecer administração e codificação eficientes etc.
[070] Entretanto, um problema crítico para tal sistema é selecionar e priorizar quais partes de imagens são transmitidas para o aparelho de síntese de imagens 101 a partir do aparelho gerador de fluxo de dados de imagem 103.
[071] Para cada parte de imagem de textura/intensidade de luz, o aparelho gerador de fluxo de dados de imagem 103 armazena um mapa de profundidade associado que fornece informações de profundidade para os pixels das partes de imagens de textura/intensidade de luz. O mapa de profundidade pode, tipicamente, compreender valores de profundidade que são indicativos da distância a partir de uma determinada posição de visualização ao objeto na direção de visualização que corresponde à posição do valor de profundidade. Um valor de profundidade pode, por exemplo, ter um valor crescente para uma distância crescente do ponto de visualização ao objeto ou pode ter um valor decrescente para uma distância crescente do ponto de visualização ao objeto. Em muitas modalidades, os valores de profundidade podem ser fornecidos sob a forma de valores de disparidade.
[072] O fornecimento de informações de profundidade e de imagem (textura) pode fornecer informações adicionais que possibilitam o processamento aprimorado pelo aparelho de síntese de imagens 101. Em particular, isso pode possibilitar, facilitar ou aprimorar a geração de imagens de vista para outras poses de visualização além das poses de visualização de âncora.
[073] Para facilitar tal processamento, deseja- se que a distância entre as poses de visualização seja tão pequena quanto possível. Especificamente, um espaçamento grande entre poses de âncora resulta em áreas sem oclusão visíveis e exige mapas de profundidade ou modelos de malha muito precisos para a síntese de visualizações intermediárias. Uma unidade de renderização pode preencher as áreas sem oclusão mediante a combinação de múltiplas âncoras, mas isso exige mais recursos para a transmissão, a decodificação e a renderização, e tende a reduzir a qualidade.
[074] Entretanto, um espaçamento pequeno entre as âncoras leva a um aumento na taxa de bits que muitas vezes é particularmente alta para aplicações como aplicações de realidade virtual que possibilitam o movimento livre. A razão para isso é que (em contraste com vídeo normal), um campo de luz com profundidade varia em função de três dimensões espaciais. Isto significa que o custo de codificação de elementos fixos (não resíduo) é alto devido à alta dimensionalidade dos dados.
[075] A seguir, será descrita uma abordagem que pode fornecer desempenho aprimorado em muitos cenários, e que especificamente pode mitigar ou reduzir erros e artefatos de oclusão enquanto ainda mantém uma baixa taxa de dados e complexidade. Ela pode implementar um sistema flexível e eficiente. A abordagem se baseia na consideração de aspectos de profundidade específicos quando se determina quais partes de imagens devem ser transmitidas ao aparelho de síntese de imagens 101 e usadas para a síntese. Especificamente, o inventor descobriu que, ao considerar uma métrica de transição de profundidade que é indicativa de uma direção e tipicamente de um tamanho de uma transição de profundidade na parte de imagem, é possível fornecer uma seleção aprimorada que, em muitos cenários, pode fornecer desempenho e qualidade de imagem aprimorados e que, especificamente, pode melhorar e reduzir artefatos causados por desobstrução.
[076] A métrica de transição de profundidade para a parte de imagem pode ser indicativa de uma direção da transição de profundidade em um plano de imagem, que pode ser especificamente o plano de imagem (ou um plano paralelo) da parte de imagem/da imagem da parte de imagem.
[077] A abordagem será descrita primeiramente em relação a uma modalidade na qual o aparelho gerador de fluxo de dados de imagem 103 pode ser um servidor de complexidade relativamente baixa e “burro” no sentido de que grande parte da decisão sobre qual parte (ou partes) de imagem transmitir é feita pelo aparelho de síntese de imagens 101. Especificamente, o aparelho de síntese de imagens 101 pode simplesmente solicitar (iterativamente) partes de imagens específicas e o aparelho gerador de fluxo de dados de imagem 103 pode simplesmente fornecer a parte de imagem solicitada.
[078] Em tal modalidade, o aparelho gerador de fluxo de dados de imagem 103 pode compreender um dispositivo de armazenamento 201 que é disposto para armazenar um conjunto de partes de imagens (também chamadas de partes de imagens de âncora ou de referência) e dados de profundidade associados de imagens que representam uma cena formada a partir de poses de visualização diferentes. Por exemplo, o dispositivo de armazenamento 201 pode compreender ladrilhos de várias imagens de âncora diferentes para poses de âncora diferentes.
[079] O aparelho gerador de fluxo de dados de imagem 103 pode compreender adicionalmente um receptor de solicitação 203 que é disposto para receber uma solicitação de parte de imagem a partir de uma fonte remota que, no exemplo específico, é o aparelho de síntese de imagens 101. No exemplo, cada solicitação de parte de imagem recebida pode solicitar que uma parte de imagem específica seja transmitida ao aparelho de síntese de imagens 101. Por exemplo, a solicitação de parte de imagem pode identificar um ladrilho específico de uma imagem de âncora específica.
[080] O receptor de solicitação 203 é acoplado a um seletor 205, o qual é também acoplado ao dispositivo de armazenamento 201. O seletor 205 pode, em resposta à solicitação da parte de imagem, selecionar a parte de imagem correspondente e recuperá-la do dispositivo de armazenamento 201. Por exemplo, o seletor 209 pode compreender uma tabela de consulta que converte a identificação da solicitação de parte de imagem para o local adequado no dispositivo de armazenamento 201 e pode, então, recuperar os dados naquele local.
[081] O seletor 205 é adicionalmente acoplado a um transmissor 207 que é alimentado com a parte de imagem recuperada. O transmissor 207 é disposto para transmitir a parte de imagem recuperada para o aparelho de síntese de imagens 101. Dessa forma, em resposta à recepção de uma solicitação de parte de imagem solicitando uma parte de imagem específica, o aparelho gerador de fluxo de dados de imagem 103 recupera a parte de imagem solicitada e a transmite de volta ao aparelho gerador de fluxo de dados de imagem 103. A transmissão de uma parte de imagem inclui adicionalmente a transmissão dos dados de profundidade associados da parte de imagem.
[082] Além disso, o aparelho gerador de fluxo de dados de imagem 103 compreende um processador de métrica 209 que é disposto para gerar métricas de transição de profundidade para as partes de imagens armazenadas no dispositivo de armazenamento
201. Dessa forma, para cada parte de imagem de um conjunto de partes de imagens (que geralmente, mas não necessariamente, inclui todas as partes de imagens armazenadas) é determinada uma métrica de transição de profundidade. A métrica de transição de profundidade para uma parte de imagem é uma métrica que indica ao menos uma direção de uma transição de profundidade na parte de imagem, e, tipicamente, também um tamanho da transição de profundidade. A transição de profundidade pode, geralmente, ser a maior transição de profundidade a ocorrer na imagem.
[083] Por exemplo, a métrica de transição de profundidade pode, para uma parte de imagem, ser gerada para indicar a direção da maior transição de profundidade da frente para trás. A métrica de transição de profundidade pode indicar especificamente se isso ocorre na direção da direita para a esquerda ou da esquerda para a direita. Dessa forma, em muitas modalidades, a indicação de direção da métrica de transição de profundidade pode ser uma direção unidimensional, e pode ser especificamente uma direção horizontal. Isso será, em muitas modalidades, uma abordagem particularmente vantajosa, uma vez que a mudança da visualização na maioria das modalidades está na direção horizontal (refletindo a configuração horizontal dos olhos de um ser humano e que a altura da vista é tipicamente inalterada).
[084] Em muitas modalidades, o processador de métrica 209 também determina o tamanho da transição de profundidade e pode, especificamente, determinar o gradiente de profundidade para o passo.
[085] Como um exemplo específico, o processador de métrica 209 pode, com base no mapa de profundidade para uma parte de imagem, dividir a parte de imagem em diferentes segmentos tendo substancialmente os mesmos valores de profundidade. Em algumas modalidades, tal segmentação pode adicionalmente levar em conta considerações visuais, por exemplo, quando os limites do segmento são determinados para assegurar que as regiões dentro do segmento tenham substancialmente as mesmas propriedades visuais (por exemplo, a mesma textura ou cor).
[086] O processador de métrica 209 pode, então, para cada ponto (por exemplo, pixel) de um limite entre dois segmentos, determinar o gradiente de profundidade, incluindo tanto o tamanho quanto a direção do gradiente. Por exemplo, o passo de profundidade entre uma média de profundidade para um pequeno grupo de pixels à esquerda do limite e um pequeno grupo de pixels à direita do limite pode ser determinado e usado como um gradiente de profundidade com o sinal indicando a direção.
Os gradientes de profundidade resultantes podem, então, ser filtrados em um filtro passa-baixa espacial adequado e o gradiente de profundidade filtrado máximo pode ser identificado e usado como a métrica de transição de profundidade para aquela parte de imagem. Dessa forma, é gerado um único valor que é indicativo da propriedade de uma transição de profundidade na parte de imagem. Em algumas modalidades, a métrica de transição de profundidade pode ser um único bit indicando a direção da métrica de transição de profundidade na direção horizontal. Por exemplo, apenas o bit de sinal determinado pode ser usado.
[087] Em muitas modalidades, a métrica de transição de profundidade pode ser determinada para refletir um vetor de gradiente que seja representativo do passo de profundidade mais dominante presente no mapa de profundidade para a parte de imagem.
[088] Como um exemplo, a métrica de transição de profundidade pode ser determinada para representar uma média de gradientes de profundidade que excedem um limiar. A métrica de transição de profundidade pode ser determinada mediante a determinação da média do subconjunto de pixels para o qual a magnitude de gradiente de profundidade excede um dado limiar. Por exemplo, o processador de métrica 209 pode, para todos os pixels na parte de imagem, determinar um gradiente de profundidade, por exemplo, como o valor de profundidade de um grupo de pixels à esquerda do pixel atual menos o valor de profundidade de um grupo de pixels à direita do pixel atual. Ele pode então (possivelmente após uma filtragem passa-baixa espacial) prosseguir e rejeitar todos os valores de gradiente abaixo de um dado limiar e determinar a métrica de transição de profundidade como a média dos valores de gradiente restantes.
[089] No caso de ser usada uma representação de malha triangular, a métrica de transição de profundidade pode ser determinada mediante a análise da diferença na posição 3D entre vértices adjacentes na malha triangular. Uma métrica de transição de profundidade adequada poderia ser a distância 3D máxima que ocorre entre quaisquer dois vértices conectados na malha.
[090] Será reconhecido que o processador de métrica 209 pode determinar a métrica de transição de profundidade em qualquer momento adequado, como especificamente quando as imagens de âncora são recebidas. Será reconhecido também que, em algumas modalidades, o processador de métrica 209 pode ser disposto para determinar as métricas de transição de profundidade mediante a recuperação das mesmas (ativa ou passivamente) a partir de uma fonte remota. Por exemplo, as métricas de transição de profundidade podem ser determinadas durante a geração de conteúdo e fornecidas ao aparelho gerador de fluxo de dados de imagem 103 juntamente com as imagens de âncora.
[091] No exemplo, o aparelho gerador de fluxo de dados de imagem 103 é disposto para transmitir as métricas de transição de profundidade ao aparelho de síntese de imagens 101 que é disposto para usar os dados ao determinar qual parte de imagem recuperar. Conforme será descrito com mais detalhes, em algumas modalidades, as métricas de transição de profundidade podem não ser transmitidas ao aparelho de síntese de imagens 101, mas podem ser usadas pelo aparelho gerador de fluxo de dados de imagem 103 para determinar localmente quais partes de imagens transmitir ao aparelho de síntese de imagens
101.
[092] No exemplo em que as métricas de transição de profundidade são transmitidas ao aparelho de síntese de imagens 101, isso pode ser feito em qualquer momento adequado e em qualquer formato adequado. Por exemplo, em algumas modalidades, todo o conjunto de métricas de transição de profundidade pode ser transmitido ao aparelho de síntese de imagens 101 durante a configuração do serviço. Isso pode ser prático em muitas modalidades, uma vez que os dados necessários para representar a métrica de transição de profundidade podem ser bem pequenos. Por exemplo, conforme anteriormente mencionado, uma métrica de transição de profundidade pode, em muitas modalidades, ser representada por um único bit indicando a direção horizontal da transição de profundidade principal na parte de imagem. Para uma implementação típica que emprega, por exemplo, 100 imagens de âncora com cada imagem sendo dividida em, por exemplo, 10 partes de imagens, todo o conjunto de métricas de transição de profundidade pode ser representado por menos de 1 kbits. Mesmo para modalidades em que o tamanho é incluído, por exemplo, por uma palavra de 8 bits, todo o conjunto de métricas de transição de profundidade pode ser representado por menos de 1 kbyte de dados.
[093] Em outras modalidades, por exemplo, quando a métrica de transição de profundidade é representada por comprimentos de palavra longos e há um número muito grande de partes de imagens, o aparelho gerador de fluxo de dados de imagem 103 pode ser disposto para transmitir dinamicamente dados de métrica de transição de profundidade para o aparelho de síntese de imagens 101. Por exemplo, quando uma nova parte de imagem é transmitida para o aparelho de síntese de imagens 101, o aparelho gerador de fluxo de dados de imagem 103 pode incluir os dados de métrica de transição de profundidade para todas as partes de imagens em uma vizinhança da parte de imagem transmitida, uma vez que são candidatas para seleção futura.
[094] A Figura 3 ilustra um exemplo de elementos do aparelho de síntese de imagens 101 de acordo com algumas modalidades da invenção. O aparelho de síntese de imagens 101 da Figura 3 pode especificamente operar em conjunto com o aparelho gerador de fluxo de dados de imagem 103 da Figura 2.
[095] O aparelho de síntese de imagens 101 compreende um receptor de dados 301 que é disposto para receber o fluxo de dados a partir do aparelho gerador de fluxo de dados de imagem 103. Especificamente, o receptor de dados 301 recebe as partes de imagens das diferentes imagens de âncora, conforme for adequado.
[096] O aparelho de síntese de imagens 101 compreende adicionalmente um sintetizador de imagem 303 que é alimentado com as partes de imagens recebidas do aparelho gerador de fluxo de dados de imagem 103. Além disso, o aparelho de síntese de imagens 101 compreende um determinador de pose 305 que é disposto para determinar uma pose de visualização de renderização a partir da qual irá renderizar imagens.
[097] A entrada de pose de visualização de renderização pode ser determinada de modos diferentes em diferentes aplicações. Em muitas modalidades, o movimento físico de um usuário pode ser rastreado diretamente. Por exemplo, uma câmera inspecionando uma área de usuário pode detectar e rastrear a cabeça do usuário (ou mesmo seus olhos). Em muitas modalidades, o usuário pode usar um headset de RV que pode ser rastreado por meios externos e/ou internos. Por exemplo, o headset pode compreender acelerômetros e giroscópios que fornecem informações sobre o movimento e a rotação do headset e, portanto, da cabeça. Em alguns exemplos, o headset de RV pode transmitir sinais ou incluir identificadores (por exemplo, visuais) que possibilitam que um sensor externo determine a posição do headset de RV.
[098] Em alguns sistemas, a pose de visualização de renderização pode ser fornecida por meios manuais, por exemplo, quando o usuário controla manualmente um joystick ou ação manual similar. Por exemplo, o usuário pode mover manualmente o espectador virtual pela cena virtual mediante o controle de um primeiro joystick analógico com uma mão e o controle manual da direção na qual o espectador virtual está olhando ao mover manualmente uma segunda alavanca analógica com a outra mão.
[099] Em algumas aplicações, uma combinação de abordagens manuais e automatizadas pode ser usada para gerar a pose de visualização de renderização. Por exemplo, um headset pode rastrear a orientação da cabeça e o movimento/posição do espectador na cena pode ser controlado pelo usuário mediante o uso de um joystick.
[100] A pose de visualização de renderização é alimentada no sintetizador de imagem 303 que é disposto para sintetizar uma imagem correspondente à pose de visualização de renderização. O sintetizador de imagem 303 pode ser especificamente disposto para realizar uma mudança de ponto de visualização, etc., para sintetizar uma imagem a partir de um novo ponto de visualização. Será reconhecido que o versado na técnica estará ciente de muitas abordagens e algoritmos diferentes para tal síntese/mudança de visualização e que qualquer abordagem adequada pode ser utilizada.
[101] O sintetizador de imagem 303 pode ser especificamente disposto para realizar a síntese de imagens com base na parte de imagem. Especificamente, ao sintetizar uma imagem, o sintetizador de imagem 303 pode dividir a imagem em uma pluralidade de partes, regiões ou ladrilhos de imagem. Para cada parte de imagem, o sintetizador de imagem 303 pode selecionar uma ou mais partes de imagens recebidas e aplicar uma mudança de ponto de visualização à parte (ou partes) de imagem para gerar a parte de imagem correspondente na imagem sintetizada.
[102] Para ser capaz de sintetizar a imagem de vista necessária para a pose de visualização de renderização atual, o aparelho de síntese de imagens 101 compreende funcionalidade para recuperar as partes de imagens necessárias a partir do aparelho gerador de fluxo de dados de imagem 103.
[103] Especificamente, o aparelho de síntese de imagens 101 compreende um seletor de síntese 307 que é disposto para selecionar qual parte (ou partes) de imagem deve ser recuperada do aparelho gerador de fluxo de dados de imagem 103 e usada para a síntese. O seletor de síntese 307 é acoplado a um recuperador 309 que é disposto para recuperar a parte (ou partes) de imagem selecionada a partir do aparelho gerador de fluxo de dados de imagem 103. O recuperador 309 pode, por exemplo, ser disposto para transmitir uma solicitação de parte de imagem ao aparelho gerador de fluxo de dados de imagem 103 utilizando um formato de mensagem adequado. Por exemplo, a solicitação de parte de imagem pode identificar diretamente a parte (ou partes) de imagem desejada. Em resposta, o aparelho gerador de fluxo de dados de imagem 103 transmitirá a parte de imagem solicitada.
[104] O aparelho de síntese de imagens 101 compreende adicionalmente um dispositivo de armazenamento de métricas 311 que é disposto para armazenar as métricas de transição de profundidade recebidas do aparelho gerador de fluxo de dados de imagem 103. A descrição a seguir presume que as métricas de transição de profundidade de todas as possíveis partes de imagens são armazenadas e estão disponíveis no aparelho de síntese de imagens 101, por exemplo, porque elas foram transferidas por download na inicialização do serviço. Consequentemente, o dispositivo de armazenamento de métricas 311 armazena métricas de transição de profundidade tanto para partes de imagens que foram recebidas como, de modo mais importante, também para partes de imagens que não foram recebidas.
[105] Será reconhecido que, em algumas modalidades, as métricas de transição de profundidade podem ser recebidas durante a operação e apenas as métricas de transição de profundidade para um subconjunto das partes de imagens podem ser armazenadas no dispositivo de armazenamento de métricas 311 em qualquer dado momento. Por exemplo, podem ser transmitidas as métricas de transição de profundidade de partes de imagens para poses de imagem em uma vizinhança da pose de imagem da última parte de imagem solicitada. Por exemplo, o aparelho gerador de fluxo de dados de imagem 103 pode, ao receber uma solicitação para uma parte de imagem, prosseguir também para identificar todas as imagens de âncora/partes de imagens que têm uma pose de âncora que satisfaça um critério de distância. Esse critério de distância pode incluir a orientação da parte de imagem solicitada para, por exemplo, selecionar apenas um subconjunto de partes de imagens para outras posições de visualização, mas em muitas modalidades, o aparelho gerador de fluxo de dados de imagem 103 pode simplesmente identificar as imagens de âncora que têm uma pose de visualização de âncora com uma posição suficientemente próxima à posição da visualização solicitada e incluir todas as partes de imagens de tais imagens. Ele pode, então, determinar quais métricas de transição de profundidade já foram transmitidas para as partes de imagens identificadas e transmitir o restante juntamente com a parte de imagem.
[106] O seletor de síntese 307 é disposto para selecionar uma primeira parte de imagem a partir de um conjunto de partes de imagens. A primeira parte de imagem é selecionada para uma parte/região de imagem de uma imagem que deve ser sintetizada pelo sintetizador de imagem 303 para a pose de visualização de renderização (ou uma determinada a partir dela, por exemplo, mediante a previsão de uma pose de visualização de renderização futura por meio da avaliação de um modelo, por exemplo, modelagem do movimento de um usuário).
[107] Especificamente, a síntese de uma imagem sintetizada pode ser realizada sintetizando-se diferentes partes de imagens e, então, combinando-se essas partes. Dessa forma, para uma determinada parte de imagem da imagem sintetizada, o sintetizador de imagem 303 pode gerar a imagem de saída aplicando uma mudança do ponto de visualização a uma parte de imagem de âncora recebida do aparelho gerador de fluxo de dados de imagem 103. Essa operação pode ser repetida para todas as partes de imagem da imagem de síntese para gerar uma imagem completa. Entretanto, devido à síntese baseada em partes de imagens, pode haver algumas inconsistências nos limites entre diferentes partes de imagens. Em muitas modalidades, essas inconsistências são suficientemente pequenas para não causar artefatos e degradação inaceitáveis. Além disso, em muitas modalidades, o sintetizador de imagem 303 pode ser disposto para executar pós-processamento para mitigar tais inconsistências. Por exemplo, os ajustes de profundidade podem ser aplicados a malhas em torno das bordas da parte de imagem para gerar um mapa de profundidade consistente ao qual as texturas podem ser sobrepostas. Como outro exemplo, as partes de imagens sintetizadas podem ser mescladas nas bordas para fornecer uma transição suave sem inconsistências acentuadas.
[108] O seletor de síntese 307 pode, para uma determinada parte de imagem da imagem sintetizada, ser disposto para selecionar o ponto de visualização de âncora que deve ser usado para a síntese dessa parte de imagem da imagem sintetizada (essa parte de imagem será chamada também de parte de imagem de síntese). Dessa forma, para uma determinada parte de imagem de síntese, o seletor de síntese 307 é disposto para selecionar qual parte de imagem deve ser usada como a parte de imagem de referência/âncora a partir da qual realizar a mudança de visualização. A parte de imagem pode ser selecionada a partir de todas as partes de imagens disponíveis incluindo a partir de imagens de âncora que não são necessariamente aquelas que têm uma pose de âncora mais próxima à pose de visualização de renderização.
[109] Consequentemente, o seletor 205 será tipicamente disposto para selecionar de um conjunto de partes de imagens de âncora uma pose/parte de imagem de visualização de âncora para uma seção de imagem de uma imagem (uma parte de imagem) a ser sintetizada pelo sintetizador de imagem 303. O conjunto de partes de imagens de âncora pode conter especificamente aquelas que correspondem à parte de imagem de síntese e especificamente aquelas que representam a mesma região da cena. Tipicamente, a mesma segmentação é usada para a imagem sintetizada e para as imagens de âncora, e para a pose de visualização de renderização que está próxima às poses de âncora, as partes de imagens correspondentes são simplesmente as partes de imagens que têm a mesma posição em sua respectiva imagem.
[110] O seletor pode ser disposto para selecionar uma primeira parte de imagem como a parte de imagem para a síntese da parte de imagem de síntese mediante a aplicação de um critério de decisão que inclui uma consideração das métricas de transição de profundidade para as partes de imagens de âncora. O critério de seleção pode incluir outras considerações e pode, tipicamente, considerar também a diferença na pose de visualização entre a pose de visualização de renderização e as poses de âncora para as partes de imagens de âncora.
[111] Em muitas modalidades, a pose de visualização de renderização pode ser usada para selecionar um conjunto de partes de imagens de âncora candidatas dentre as quais o seletor 205 pode selecionar a primeira parte de imagem com base na métrica de transição de profundidade. Por exemplo, um conjunto de partes de imagens de âncora candidatas pode ser determinado selecionando-se as partes de imagens de âncora correspondentes nas duas imagens de âncora mais próximas em direções opostas. Por exemplo, a imagem de âncora mais próxima à esquerda e à direita da pose de visualização de renderização pode ser selecionada, e as partes de imagens nessas duas imagens que estão na mesma posição de imagem que a parte de imagem de síntese serão selecionadas como candidatas.
[112] As direções podem ser direções de plano de imagem e, especificamente, podem ser direções de plano de imagem no plano de imagem (ou um plano paralelo) da parte de imagem/imagem da parte de imagem. A direção de uma transição de profundidade da frente para trás de uma parte de imagem pode ser uma direção no plano de imagem de uma transição de um objeto/área/pixel mais em primeiro plano para um objeto/área/pixel mais em segundo plano. A direção de uma pose de visualização da parte de imagem para a pose de visualização de renderização pode ser uma direção no plano de imagem da parte de imagem/imagem. Pode ser uma direção de uma projeção da pose de visualização ao plano de imagem ao longo de uma direção ortogonal ao plano de imagem até uma projeção da pose de visualização de renderização ao plano de imagem ao longo de uma direção ortogonal ao plano de imagem.
[113] Em outras modalidades, imagens de âncora ou partes de imagens para as quais a pose de âncora satisfaz um dado requisito de proximidade (por exemplo, uma distância euclidiana que está abaixo de um limiar) podem ser selecionadas como pertencentes ao conjunto de candidatas.
[114] O seletor 205 pode, então, avaliar as métricas de transição de profundidade das partes de imagens candidatas para selecionar uma parte de imagem.
[115] O seletor de síntese 307 pode selecionar especificamente a primeira parte de imagem dependendo da direção da transição de profundidade. Em particular, o seletor de síntese 307 pode ser disposto para selecionar uma parte de imagem de âncora para a qual a transição de profundidade principal/dominante da frente para trás ocorre em uma direção que é oposta à direção da mudança do ponto de visualização necessária em vez de uma parte de imagem de âncora para a qual a transição de profundidade principal/dominante da frente para trás ocorre em uma direção que está na mesma direção que a mudança do ponto de visualização necessária. Por exemplo, se duas partes de imagens de âncora candidatas compreenderem uma transição de profundidade dominante de um objeto em primeiro plano para o segundo plano, sendo que o segundo plano está à direita do objeto em primeiro plano, a transição de profundidade da frente para trás estará em uma direção voltada para a direita. Se uma primeira parte de imagem de âncora candidata for para uma pose de âncora à esquerda da pose de visualização de renderização e uma segunda parte de imagem de âncora candidata for para uma pose de âncora à direita da pose de visualização de renderização, o seletor 205 selecionará a segunda pose de visualização de âncora candidata em vez da primeira candidata.
[116] Em muitas modalidades, utiliza-se uma abordagem mais gradual. Por exemplo, uma medida de custo pode ser determinada para várias partes de imagens de âncora (por exemplo, todas as partes de imagens dentro de uma dada distância da pose de visualização de renderização) que depende de uma pluralidade de parâmetros incluindo a métrica de transição de profundidade. Por exemplo, pode ser determinada uma medida de custo que aumenta com uma distância crescente entre a pose de visualização de renderização e a pose de âncora para a parte de imagem, e que também diminui como uma função do alinhamento entre um vetor da pose de visualização de renderização para a pose de âncora e a direção da transição de profundidade dominante, conforme representado pela métrica de transição de profundidade. O seletor de síntese 307 pode,
então, selecionar a pose de âncora para a qual a medida de custo é minimizada.
[117] Em algumas dessas modalidades, o tamanho da transição de profundidade pode também ser considerado. Por exemplo, quanto maior o tamanho de transição de profundidade, maior a função de custo.
[118] Como outro exemplo, o tamanho de transição de profundidade que excede um limiar pode aumentar a função de custo por um valor fixo.
[119] O seletor pode especificamente pender a seleção da primeira parte de imagem em direção a uma parte de imagem para a qual uma transição de profundidade da frente para trás da transição de profundidade está em uma direção que é oposta a uma direção de uma pose de visualização para a parte de imagem à pose de visualização de renderização. Conforme descrito acima, a tendência pode ser feita especificamente pela seleção de apenas uma parte de imagem para a qual as duas direções são suficientemente opostas entre si (por exemplo, com um ângulo entre elas maior que, por exemplo, 90°, 120° ou 150°).
[120] O seletor pode, consequentemente, considerar duas direções, por exemplo, sendo que ambas estão no plano de imagem das partes de imagens/imagem. As direções podem, por exemplo, ser representadas por vetores.
[121] Uma direção é a direção do passo da frente para trás, isto é, a direção em que o passo é do primeiro plano para o segundo plano. Essa direção pode, por exemplo, ser da esquerda para a direita para a parte de imagem, por exemplo, a direção da maior transição do primeiro plano para o segundo plano pode ser da esquerda para a direita. Como um exemplo específico, o lado esquerdo da parte de imagem pode ser um objeto em primeiro plano (por exemplo, parte de um tronco de uma árvore), enquanto o lado direito pode ser o segundo plano (por exemplo, o céu). Para esse tipo de exemplo, a direção do passo da frente para trás é, dessa forma, uma direção da esquerda para a direita, isto é, a transição de profundidade da frente para trás da transição de profundidade está em uma direção da esquerda para a direita.
[122] O seletor pode considerar adicionalmente uma segunda direção que é da pose de visualização para a parte de imagem (isto é, a pose de âncora da parte de imagem) para a pose de visualização de renderização. Por exemplo, a pose de visualização de renderização pode ser deslocada para a direita da pose de âncora para a parte de imagem, caso em que a direção é uma direção da esquerda para a direita, ou pode ser deslocada para a esquerda da pose de âncora, caso em que a direção está em uma direção da direita para a esquerda.
[123] O seletor pode pender a seleção com base na relação entre essas duas direções. Especificamente, ele irá pender a seleção que é em direção a uma parte de imagem para a qual essas direções são opostas uma à outra. A tendência pode, por exemplo, ser introduzida pela função de custo considerando as direções relativas e aumentando o valor de custo para um alinhamento crescente entre as direções (diminuindo o ângulo entre as direções).
[124] A tendência pode depender de um grau de correlação/alinhamento entre as direções no plano da imagem.
[125] Será reconhecido que direções e pontos no plano de imagem não precisam ser explicitamente calculados ou determinados para executar a tendência.
[126] Tal abordagem reflete a percepção do inventor de que, quando as duas direções são opostas, a transição de profundidade principal resultará em mais oclusão ocorrendo quando é feita a mudança para a pose de visualização de renderização e, portanto, em menos operação de desobstrução sendo necessária, enquanto que quando as duas direções estão na mesma direção, a transição de profundidade principal resultará em menos oclusão (e, portanto, mais desobstrução do segundo plano) ocorrendo quando se muda para a pose de visualização de renderização e, dessa forma, em mais operação de desobstrução sendo necessária.
[127] Dessa forma, a tendência de seleção específica pode fornecer uma tendência de seleção particular que fornece uma vantagem substancial em implementações práticas.
[128] O seletor de síntese 307 seleciona, dessa forma, uma primeira parte de imagem a ser usada para sintetizar uma parte de imagem específica de uma imagem a ser sintetizada para a pose de visualização de renderização. A seleção pode ser alimentada ao sintetizador de imagem 303 que, então, prossegue para realizar a síntese com base na parte de imagem de âncora selecionada. No caso de a parte de imagem de âncora selecionada já ter sido recebida e armazenada anteriormente, o sintetizador de imagem 303 pode recuperar a parte de imagem e usá-la para a síntese.
[129] No aparelho de síntese de imagens 101 da Figura 3, a seleção também é alimentada ao recuperador 309 que prossegue para solicitar ao aparelho gerador de fluxo de dados de imagem 103 a imagem de âncora selecionada. Essa recuperação pode, em muitas modalidades, ser disposta para depender de a parte de imagem já ter sido recebida ou não,
isto é, o recuperador 309 pode primeiro avaliar se uma parte de imagem de âncora adequada foi recebida e está sempre armazenada, e, em caso negativo, ele pode solicitar a parte de imagem ao aparelho gerador de fluxo de dados de imagem
103.
[130] Será reconhecido que pode haver um atraso no fornecimento da parte de imagem de âncora selecionada pelo aparelho gerador de fluxo de dados de imagem 103 ao aparelho de síntese de imagens 101, e que o aparelho de síntese de imagens 101 pode compensar tais atrasos de diferentes maneiras. Por exemplo, o seletor de síntese 307 pode executar a seleção com base em uma pose de visualização de renderização prevista gerada a partir da ação do usuário. Como outro exemplo, para acomodar o atraso de transmissão, pode ser introduzido um atraso na pose de visualização de renderização usada para a síntese em comparação com a pose de visualização de renderização solicitada.
[131] A abordagem descrita pode, em particular, fornecer uma reprodução em fluxo contínuo prática com o uso de uma parte de imagem/transmissão baseada em tempo e renderização de dados de imagem com profundidade associada (como mapas de profundidade e/ou malhas). Para uma dada direção de visão de um usuário e uma dada distribuição de profundidade de uma cena 3D, o sistema pode procurar priorizar a transmissão de partes de imagens (por exemplo, ladrilhos predefinidos) de modo que as partes de imagens que têm o maior efeito sobre a qualidade de imagem sejam transmitidas primeiro (com uma prioridade mais alta) e ladrilhos que têm menos efeito sobre a qualidade de imagem sejam transmitidos posteriormente.
[132] A abordagem descrita utiliza métricas de transição de profundidade na determinação de qual parte (ou partes) de imagem deve ser transmitida em seguida e, dessa forma, na priorização e sequenciamento da transmissão de partes de imagens. A abordagem pode, por exemplo, usar um tamanho e direção de passo de profundidade pré-calculados como uma métrica de transição de profundidade que é transmitida e armazenada como metadados. Esses dados podem, então, ser usados para avaliar qual parte de imagem deve ser transmitida do aparelho gerador de fluxo de dados de imagem 103 para o aparelho de síntese de imagens 101.
[133] O inventor percebeu que a abordagem pode fornecer desempenho aprimorado e, em particular, que pode reduzir ou mitigar erros ou artefatos que podem ocorrer devido à desobstrução resultante da mudança do ponto de visualização.
[134] A questão pode ser ilustrada considerando- se a situação da Figura 4, que mostra uma imagem para o olho esquerdo e para o olho direito com mapas de profundidade associados descritos a seguir. A codificação do mapa de profundidade é tal que branco representa próximo à câmera e preto representa longe da câmera. O exemplo mostra um objeto em primeiro plano na frente de um objeto em segundo plano. Por uma questão de simplicidade, presume-se que o segundo plano é meramente um segundo plano branco constante que pode ser ignorado na descrição a seguir.
[135] Um ponto de visualização intermediário pode ser sintetizado a partir da imagem esquerda com o mapa de profundidade associado, ou a partir da imagem direita com o mapa de profundidade associado com o uso de renderização baseada em imagem de profundidade. Como alternativa, os mapas de profundidade podem ser convertidos em uma malha e o mapeamento de textura de imagens gráficas padrão pode ser usado para sintetizar um ponto de visualização intermediário (usando a imagem esquerda ou direita como referência).
[136] Neste exemplo, se o ponto de visualização intermediário for sintetizado com o uso da imagem esquerda, então as informações do objeto de segundo plano dotado de um padrão são preservadas conforme ilustrado na Figura 5. Esse é o caso porque a única borda de passo de profundidade entre o objeto em primeiro plano e o objeto em segundo plano presente na imagem é orientada de modo que nenhuma desobstrução adicional surja e apenas cobertura/oclusão resulte das mudanças de paralaxe relativa dos dois objetos durante a execução da mudança de visualização a partir da imagem esquerda.
[137] Entretanto, se o ponto de visualização intermediário for sintetizado com o uso da imagem direita, então, o objeto de segundo plano é parcialmente desobstruído, conforme ilustrado na Figura 6. Esse é o caso porque a única borda de passo de profundidade presente na imagem resulta em desobstrução quando a mudança de paralaxe é realizada em relação à imagem esquerda. Neste exemplo, o ponto de visualização intermediário é sintetizado com erros/artefatos, uma vez que a ‘descoberta’ ou a desobstrução do objeto de segundo plano ocorre durante a renderização do ponto de visualização intermediário a partir da imagem direita. O objeto de segundo plano local é ‘estirado’ ou são formados espaços vazios dependendo do método de renderização específico que é utilizado.
[138] As Figuras 5 e 6 ilustram que a síntese de vista correta pode ser obtida a partir de um único ponto de visualização quando há um único passo de profundidade presente na imagem e este tem uma orientação conhecida. Entretanto, em geral haverá múltiplos objetos presentes na imagem e, portanto, muitos passos de profundidade estarão presentes com direções de passo de profundidade diferentes. Isso é ilustrado na Figura 7, onde os exemplos das Figuras 4 a 6 são estendidos com um terceiro objeto que é posicionado atrás do objeto em primeiro plano. Nesse caso, ocorrerá desobstrução independentemente de ser utilizada a visualização de referência/âncora esquerda ou a imagem de visualização de referência/âncora direita. Dessa forma, no exemplo em que a imagem contém agora dois passos de profundidade em direções opostas (o passo da frente para trás é, respectivamente, na direção esquerda e direita para os dois objetos de segundo plano). A imagem de vista intermediária não pode ser sintetizada corretamente com o uso da imagem esquerda ou da direita, uma vez que ocorrerá desobstrução em ambos os casos.
[139] Entretanto, na abordagem descrita onde a síntese baseada em parte de imagem é executada, isso pode ser alcançado e o uso da métrica de transição de profundidade para selecionar quais partes de imagens estão presentes e são usadas para a síntese pode resolver o problema.
[140] Isso pode ser ilustrado pelo exemplo da Figura 8 no qual as imagens da Figura 7 são, cada uma, representadas por 12 partes de imagens/ladrilhos. Cada ladrilho corresponde a uma região possivelmente sobreposta da imagem. Uma primeira vantagem do ladrilhamento é que ele pode reduzir a quantidade de dados que precisam ser transmitidos, uma vez que é possível selecionar apenas partes da imagem que estão próximas da pose de visualização de renderização e para as quais uma pequena mudança de ponto de visualização precisa de uma atualização de imagem. Ladrilhos que contêm menos complexidade 3D e ladrilhos que ficam mais distantes da pose de visualização de renderização podem ter menos prioridade de atualização, uma vez que podem ser renderizados em qualidade aceitável com o uso de um ponto de visualização diferente (que já estava presente no lado do cliente).
[141] Dessa forma, o ladrilhamento tem vantagens para a transmissão contínua de imagens de seis graus de liberdade (6DoF), uma vez que pode permitir uma provisão mais flexível e granular de dados de imagem. Entretanto, além disso, o inventor descobriu que pode resolver problemas de oclusão selecionando ladrilhos durante a reprodução dependendo da pose de visualização de renderização (e, dessa forma, no exemplo, da posição e do movimento do usuário) e de uma métrica de transição de profundidade. Dada a estrutura de ladrilhamento, conforme mostrado na Figura 8, um ponto de visualização intermediário para uma cena mais complexa pode agora ser composto com o uso de uma combinação de ladrilhos de diferentes pontos de visualização de referência/âncora, sendo que a seleção do ladrilho depende da direção (e possivelmente do tamanho) da transição de profundidade dominante no ladrilho, conforme descrito anteriormente. Uma síntese baseada em ladrilho exemplificadora para o exemplo da Figura 8 é ilustrada na Figura 9. A abordagem pode, em particular, melhorar o desempenho de desobstrução, uma vez que reduz a quantidade de transições de profundidade conflitantes e, dessa forma, desobstrução, para a seleção de qual parte de imagem/imagem de âncora usar para a operação de mudança de visualização.
[142] Como um exemplo muito específico da abordagem, o aparelho de síntese de imagens 101 pode, durante a reprodução 6DoF por ladrilho, selecionar o melhor ladrilho de âncora de referência de um conjunto de ladrilhos de âncora de referência próximo executando as seguintes etapas:
1. Determinar o conjunto de N partes de imagem/ladrilhos de âncora de referência i para as quais a posição de âncora está mais próxima da pose de visualização de renderização atual ;
2. Ler os metadados contendo métricas de transição de profundidade que refletem um vetor de gradiente de profundidade dominante para cada ponto de visualização de referência i;
3. Para cada ladrilho, selecionar o ladrilho de âncora para o qual uma função de custo é minimizada com base nas métricas de transição de profundidade.
[143] Uma métrica de transição de profundidade adequada pode ser um vetor de gradiente de profundidade dominante, e uma função de custo adequada pode ser a recíproca do produto interno do vetor de gradiente de profundidade dominante e da projeção (sobre o plano de visualização de referência) do vetor que conecta a posição de visualização de referência e a posição de espectador.
[144] Por exemplo, suponha que ≡ − seja o vetor que conecta a posição de âncora/pose de visualização de referência i e a pose de visualização de renderização. Suponha que seja o vetor de direção que aponta de uma pose de âncora próxima para o centro do ladrilho j. Deve-se notar que esse vetor de direção pode ser calculado a partir da localização do ladrilho na imagem completa e da projeção específica que foi usada para criar as imagens de âncora (por exemplo, em perspectiva ou equirretangular). Suponha que o plano P seja o plano ortogonal a . Podemos agora determinar o componente de que se situa no plano P e que é, por definição, ortogonal ao vetor de direção de visualização . Suponha que denote esse componente. O ponto de visualização de referência i selecionado para o ladrilho j deve agora maximizar o produto interno sobre todos os pontos de visualização próximos i (correspondendo à minimização da função de custo sendo recíproca do produto interno): #$%#&#'() max !" ∙+ ,
[145] Se os vetores e - tiverem a mesma direção, então o espectador está posicionado de tal modo relativo à visualização de referência i que a cobertura/oclusão ocorre no passo de oclusão/profundidade. Portanto, o máximo do produto interno, conforme dado acima, é uma métrica de decisão útil.
[146] Os exemplos anteriores se concentraram em um exemplo no qual foi feita a decisão de qual parte de imagem selecionar no aparelho de síntese de imagens 101 e, especificamente, foi implementada uma abordagem com um aparelho de síntese de imagens “inteligente” 101 e um aparelho gerador de fluxo de dados de imagem “burro” 103.
[147] Entretanto, em algumas modalidades, o algoritmo de decisão pode, por exemplo, ser executado no aparelho gerador de fluxo de dados de imagem 103. Por exemplo, o aparelho de síntese de imagens 101 pode ser disposto para transmitir diretamente a pose de visualização de renderização para o aparelho gerador de fluxo de dados de imagem 103. O aparelho gerador de fluxo de dados de imagem 103 pode armazenar localmente os dados de métrica de transição de profundidade gerados e o processo descrito com referência ao seletor de síntese 307 pode, em vez disso, ser executado pelo seletor
205. A parte de imagem de âncora selecionada pode, então, ser transmitida ao aparelho de síntese de imagens 101, por exemplo, com uma indicação de qual parte de imagem sintetizada deve ser sintetizada com base na parte de imagem de âncora recebida.
[148] Em tais modalidades, nenhuma seleção complexa precisa ser executada pelo aparelho de síntese de imagens 101 e nenhum dado de métrica de transição de profundidade precisa ser recebido e armazenado. Ao invés disso, o aparelho de síntese de imagens 101 pode simplesmente receber as partes de imagens de âncora e realizar a síntese instruída. Assim, tal abordagem pode permitir a implementação de um aparelho de síntese de imagens 101 de baixa complexidade.
[149] Em algumas modalidades, as partes de imagens podem corresponder a um particionamento predeterminado das imagens. Por exemplo, como no exemplo das Figuras 8 e 9, uma imagem retangular pode ser dividida em uma pluralidade predeterminada de ladrilhos quadrados, sendo que cada ladrilho corresponde a uma parte de imagem selecionável individualmente.
[150] Tal abordagem pode possibilitar uma implementação de complexidade baixa que, entretanto, pode fornecer ainda excelente desempenho.
[151] Em algumas modalidades, as partes de imagens (ou pelo menos algumas partes de imagens) podem ser faces de projeções poliédricas da cena para poses de visualização diferentes como, por exemplo, quadrados em um mapa de cubos ou os triângulos em um icosaedro.
[152] Especificamente, para um determinado ponto de visualização, a vista hemisférica pode ser dividida em um conjunto de polígonos planos correspondentes que formam juntos uma construção geométrica hemisférica. Isso irá, em muitas modalidades, facilitar as operações de síntese de visualização e, adicionalmente, irá facilitar a integração de novas partes de imagens que são recebidas com partes de imagens anteriormente recebidas ou previstas. Comparado à projeção equirretangular, e devido às projeções poliédricas que têm faces planas, é mais barato renderizar uma imagem em uma GPU padrão, devido ao fato de que um número baixo de triângulos pode descrever com precisão o formato que está associado à projeção. Para projeções poliédricas com número suficiente de faces (como a projeção icosaédrica), a distorção média de projeção é menor que a projeção equirretangular. Adicionalmente, as faces fornecem um particionamento natural da imagem.
[153] Em algumas modalidades, o aparelho gerador de fluxo de dados de imagem 103 pode compreender um particionador que é disposto para gerar ao menos algumas partes de imagens mediante o particionamento de imagens de âncora. Em algumas modalidades, esse particionamento pode ser predeterminado, por exemplo o particionador 209 pode particionar a imagem com o uso de um ladrilhamento regular.
[154] Entretanto, em muitas modalidades, partições ou segmentos de formato mais livre podem ser gerados e, em particular, a geração de partes de imagens pode ser por meio de uma segmentação que depende das propriedades da imagem e/ou mapa de profundidade. Isso pode possibilitar, por exemplo, que objetos específicos sejam representados por partes de imagens diferentes, o segundo plano por uma outra parte de imagem individual etc.
[155] Será reconhecido que qualquer abordagem adequada para segmentação de imagem pode ser usada sem se afastar do escopo da invenção. Por exemplo, os segmentos podem ser gerados para terem cores e/ou intensidades consistentes, ou para corresponderem a imagens de objetos reconhecidas, como faces, ou, por exemplo, os segmentos podem ser gerados para corresponderem a áreas com valores de profundidade similares etc. Será reconhecido que um grande número de algoritmos e critérios de segmentação será conhecido pelo versado na técnica.
[156] Em algumas modalidades, ao menos algumas partes de imagens estão sobrepostas.
[157] Em muitas modalidades, pode ser benéfico possibilitar partes de imagens sobrepostas de modo que duas partes de imagens adjacentes incluam dados de imagem para uma região limítrofe sobreposta. Isso pode resultar em uma demanda de armazenamento aumentada e pode aumentar a taxa de dados do fluxo de bits. Entretanto, em muitas modalidades, isso pode possibilitar uma eficiência de codificação aprimorada (por exemplo, se os blocos de codificação não se alinharem com os limites entre as partes de imagens). Além disso, as regiões sobrepostas podem facilitar substancialmente a mistura de uma nova parte de imagem com outras partes de imagens que, por exemplo, possam ter sido geradas anteriormente no aparelho de síntese de imagens 101.
[158] Embora a descrição anterior tenha se concentrado em uma representação com o uso de imagens padrão e mapas de profundidade, será reconhecido que, em outras modalidades, outras abordagens podem ser usadas.
[159] Por exemplo, as imagens podem compreender imagens de atlas de textura que incluem partes de textura a partir de representações de textura e malha da cena. Um exemplo de tal representação pode ser encontrado, por exemplo, em A. Collet et al. High-quality streamable free-viewpoint video. ACM Transactions on Graphics (TOG), Proceedings of ACM SIGGRAPH
2015. Volume 34, edição 4, agosto de 2015.
[160] Em tal exemplo, uma imagem de âncora pode corresponder a um atlas de textura que é mais adequado para visualização a partir da posição de âncora (região). Um atlas de textura combinado com uma malha (disjunta) pode formar um modelo geométrico de um objeto ou cena. Nesse caso, uma parte de imagem pode ser, por exemplo, uma textura em tal atlas que corresponde a uma superfície em uma cena.
[161] Em algumas modalidades, as partes de imagens (ou ao menos algumas delas) podem ser pré-codificadas. Dessa forma, elas podem ser codificadas e armazenadas em um formato em que podem ser incluídas diretamente no fluxo de bits sem qualquer requisito para transcodificação ou (re)codificação. Em vez disso, uma parte de imagem que deve ser incluída no fluxo de bits pode simplesmente ser recuperada do dispositivo de armazenamento e adicionada ao fluxo de bits sem operação de codificação. Isso pode reduzir muito substancialmente os requisitos de recursos e complexidade no aparelho gerador de fluxo de dados de imagem 103 e proporcionar uma operação muito eficaz.
[162] Em algumas modalidades, a métrica de transição de profundidade pode ser determinada com base nos dados de profundidade para as partes de imagens. Entretanto, os princípios e abordagens descritos não se limitam a qualquer relação específica entre os dados de profundidade para as partes de imagens, como, por exemplo, aqueles recebidos e usados para a síntese, e a métrica de transição de profundidade. Deve-se notar também que não é de modo algum uma necessidade técnica ou mesmo um requisito prático que exista qualquer relação específica entre os dados de profundidade e a métrica de transição de profundidade, ou que a métrica de transição de profundidade seja gerada de qualquer maneira específica.
[163] Na prática, a métrica de transição de profundidade pode, em muitas modalidades, ser gerada mediante a avaliação e o processamento dos dados de profundidade para as partes de imagens. Adicionalmente, em muitas modalidades isso pode, de fato, ser feito pelo aparelho de síntese com base nos dados de profundidade recebidos. Entretanto, em muitas outras modalidades práticas, a métrica de transição de profundidade pode ser determinada, por exemplo, na fonte de imagens. Por exemplo, um servidor pode gerar a métrica de transição de profundidade e simplesmente fornecê-la ao aparelho de síntese independentemente dos dados de profundidade. O servidor pode, nessas modalidades, gerar a métrica de transição de profundidade com base nos dados de profundidade, mas isso não é necessário e, de fato, pode ser possível gerar a métrica de transição de profundidade sem qualquer consideração dos dados de profundidade gerados. Por exemplo, isso pode ser determinado com base na análise da parte de imagem (por exemplo, uma imagem pode ser analisada para determinar uma cor de segundo plano dominante (por exemplo, a cor que cobre a maior área) com uma parte de imagem sendo então analisada para identificar uma área dessa cor. Se essa área for adjacente ao lado da parte de imagem, então uma

Claims (15)

REIVINDICAÇÕES
1. APARELHO DE SÍNTESE DE IMAGENS, caracterizado por compreender: um receptor (301) para receber de uma fonte de imagens partes de imagens recebidas e dados de profundidade associados, sendo que as partes de imagens são partes de imagens que representam uma cena a partir de poses de visualização diferentes; um determinador (305) para determinar uma pose de visualização de renderização; um armazenamento (311) que compreende uma métrica de transição de profundidade para cada parte de imagem de um conjunto de partes de imagens das partes de imagens recebidas, sendo que a métrica de transição de profundidade para uma parte de imagem indica uma direção de uma transição de profundidade na parte de imagem; um seletor para selecionar uma primeira parte de imagem do conjunto de partes de imagens em resposta à pose de visualização de renderização e à métrica de transição de profundidade; e, um recuperador (309) para recuperar a primeira parte de imagem a partir da fonte de imagens; um sintetizador de imagem (303) para sintetizar ao menos uma imagem a partir de partes de imagens recebidas incluindo a primeira parte de imagem.
2. APARELHO DE SÍNTESE DE IMAGENS, de acordo com a reivindicação 1, caracterizado pela métrica de transição de profundidade ser indicativa de um tamanho da transição de profundidade.
3. APARELHO DE SÍNTESE DE IMAGENS, de acordo com qualquer uma das reivindicações 1 e 2, caracterizado pelo seletor (307) ser disposto para selecionar adicionalmente a primeira parte de imagem em resposta a diferenças entre uma pose de visualização das partes de imagens do conjunto de partes de imagens e a pose de visualização de renderização.
4. APARELHO DE SÍNTESE DE IMAGENS, de acordo com a reivindicação 3, caracterizado pelo seletor (307) ser disposto para determinar o conjunto de partes de imagens submetidas a uma restrição em que uma diferença entre a pose de visualização de qualquer parte de imagem pertencente ao conjunto de partes de imagens e a pose de visualização de renderização está abaixo de um limiar.
5. APARELHO DE SÍNTESE DE IMAGENS, de acordo com qualquer uma das reivindicações 1 a 4, caracterizado pelo seletor (307) ser disposto para determinar o conjunto de partes de imagens como partes de imagens que representam uma mesma região da cena como uma seção de imagem de uma imagem a ser sintetizada pelo sintetizador de imagem (303), sendo que as partes de imagens do conjunto de partes de imagens representam a região de imagem a partir de poses de visualização diferentes.
6. APARELHO DE SÍNTESE DE IMAGENS, de acordo com qualquer uma das reivindicações 1 a 5, caracterizado pelo conjunto de partes de imagens compreender partes de imagens de poses de visualização diferentes e que correspondem a uma mesma parte de uma imagem a ser sintetizada.
7. APARELHO DE SÍNTESE DE IMAGENS, de acordo com qualquer uma das reivindicações 1 a 6, caracterizado pelo seletor (307) ser disposto para direcionar a seleção da primeira parte de imagem em direção a uma parte de imagem para a qual uma transição de profundidade da frente para trás da transição de profundidade está em uma direção que é oposta a uma direção de uma pose de visualização para a parte de imagem à pose de visualização de renderização.
8. APARELHO DE SÍNTESE DE IMAGENS, de acordo com qualquer uma das reivindicações 1 a 7, caracterizado pela síntese da ao menos uma imagem compreender sintetizar uma parte de imagem da ao menos uma imagem proveniente da primeira parte de imagem.
9. APARELHO DE SÍNTESE DE IMAGENS, de acordo com qualquer uma das reivindicações 1 a 8, caracterizado pela métrica de transição de profundidade representar uma média de gradientes de profundidade que excedem um limite.
10. APARELHO PARA GERAR UM FLUXO DE DADOS DE IMAGEM, caracterizado por compreender: um receptor (203) para receber uma solicitação de parte de imagem a partir de uma fonte remota; uma memória (201) para armazenar um conjunto de partes de imagens e dados de profundidade associados que representam uma cena a partir de poses de visualização diferentes; um gerador de métricas (203) para fornecer uma métrica de transição de profundidade para cada parte de imagem do conjunto de partes de imagens, sendo que a métrica de transição de profundidade para uma parte de imagem é indicativa de uma direção de uma transição de profundidade na parte de imagem; um seletor (205) para selecionar partes de imagens a partir do conjunto de partes de imagens em resposta à solicitação de parte de imagem e às métricas de transição de profundidade; e, um transmissor (207) para transmitir partes de imagens selecionadas e profundidade associada à fonte remota.
11. APARELHO, de acordo com a reivindicação 10, caracterizado pelo transmissor (207) ser disposto para transmitir para a fonte remota as métricas de transição de profundidade para o conjunto de partes de imagens.
12. APARELHO, de acordo com qualquer uma das reivindicações 10 ou 11, caracterizado pela solicitação de parte de imagem compreender uma indicação de pose de visualização, e o seletor (205) ser disposto para selecionar partes de imagens em resposta às métricas de transição de profundidade e à indicação de pose de visualização.
13. MÉTODO PARA SINTETIZAR UMA IMAGEM, caracterizado por compreender: receber de uma fonte de imagens partes de imagens recebidas e dados de profundidade associados, sendo que as partes de imagens são partes de imagens que representam uma cena a partir de poses de visualização diferentes; determinar uma pose de visualização de renderização; armazenar uma métrica de transição de profundidade para cada parte de imagem de um conjunto de partes de imagens das partes de imagens recebidas, sendo que a métrica de transição de profundidade para uma parte de imagem indica uma direção de uma transição de profundidade na parte de imagem; selecionar uma primeira parte de imagem do conjunto de partes de imagens em resposta à pose de visualização de renderização e à métrica de transição de profundidade;
recuperar a primeira parte de imagem a partir da fonte de imagens; e, sintetizar ao menos uma imagem a partir de partes de imagens recebidas incluindo a primeira parte de imagem.
14. MÉTODO PARA GERAR UM FLUXO DE DADOS DE IMAGEM, método caracterizado por compreender: receber uma solicitação de parte de imagem a partir de uma fonte remota; armazenar um conjunto de partes de imagens e dados de profundidade associados que representam uma cena a partir de poses de visualização diferentes; fornecer uma métrica de transição de profundidade para cada parte de imagem do conjunto de partes de imagens, sendo que a métrica de transição de profundidade para uma parte de imagem é indicativa de uma direção de uma transição de profundidade na parte de imagem; selecionar partes de imagens a partir do conjunto de partes de imagens em resposta à solicitação de parte de imagem e às métricas de transição de profundidade; e, transmitir partes de imagens selecionadas e profundidade associada à fonte remota.
15. PRODUTO DE PROGRAMA DE COMPUTADOR, caracterizado por compreender meios de código de programa de computador adaptados para executar todas as etapas, conforme definido na reivindicação 14, quando o dito programa for executado em um computador.
BR112021005393-0A 2018-09-25 2019-09-16 aparelho de síntese de imagens, aparelho para gerar um fluxo de dados de imagem, método para sintetizar uma imagem, método para gerar um fluxo de dados de imagem e produto de programa de computador BR112021005393A2 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP18196617.7 2018-09-25
EP18196617.7A EP3629585A1 (en) 2018-09-25 2018-09-25 Image synthesis
PCT/EP2019/074617 WO2020064381A1 (en) 2018-09-25 2019-09-16 Image synthesis

Publications (1)

Publication Number Publication Date
BR112021005393A2 true BR112021005393A2 (pt) 2021-06-22

Family

ID=63713621

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112021005393-0A BR112021005393A2 (pt) 2018-09-25 2019-09-16 aparelho de síntese de imagens, aparelho para gerar um fluxo de dados de imagem, método para sintetizar uma imagem, método para gerar um fluxo de dados de imagem e produto de programa de computador

Country Status (7)

Country Link
US (1) US20210400314A1 (pt)
EP (2) EP3629585A1 (pt)
KR (1) KR102641527B1 (pt)
BR (1) BR112021005393A2 (pt)
CA (1) CA3113757A1 (pt)
TW (1) TW202029742A (pt)
WO (1) WO2020064381A1 (pt)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11722718B2 (en) * 2019-01-24 2023-08-08 Interdigital Vc Holdings, Inc. System and method for adaptive spatial content streaming with multiple levels of detail and degrees of freedom
CN114331828A (zh) * 2020-09-30 2022-04-12 脸萌有限公司 图片转视频的方法、装置、设备及存储介质
EP4125275A1 (en) * 2021-07-27 2023-02-01 Nokia Technologies Oy A method, an apparatus and a computer program product for video conferencing
US11967024B2 (en) * 2021-11-03 2024-04-23 Nvidia Corporation Extracting triangular 3-D models, materials, and lighting from images
WO2023099383A1 (en) * 2021-12-02 2023-06-08 Koninklijke Kpn N.V. Rendering 3d scene comprising objects
EP4246988A1 (en) * 2022-03-16 2023-09-20 Koninklijke Philips N.V. Image synthesis

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL202460A (en) * 2009-12-01 2013-08-29 Rafael Advanced Defense Sys Method and system for creating a 3D view of real arena for military planning and operations
US20120188234A1 (en) * 2011-01-20 2012-07-26 University Of Southern California Image processing apparatus and method
GB2534136A (en) * 2015-01-12 2016-07-20 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding
CA2988360A1 (en) * 2015-06-16 2016-12-22 Koninklijke Philips N.V. Method and apparatus for determining a depth map for an image
JP6805534B2 (ja) * 2015-07-02 2020-12-23 株式会社リコー 視差画像生成装置、視差画像生成方法及び視差画像生成プログラム、物体認識装置、機器制御システム
US10147211B2 (en) * 2015-07-15 2018-12-04 Fyusion, Inc. Artificially rendering images using viewpoint interpolation and extrapolation
JP7065836B6 (ja) * 2016-09-29 2022-06-06 コーニンクレッカ フィリップス エヌ ヴェ 画像処理
KR102581134B1 (ko) * 2016-12-06 2023-09-21 코닌클리케 필립스 엔.브이. 광 강도 이미지를 생성하기 위한 장치 및 방법

Also Published As

Publication number Publication date
EP3857899C0 (en) 2024-03-13
JP2022502755A (ja) 2022-01-11
KR20210059775A (ko) 2021-05-25
CA3113757A1 (en) 2020-04-02
EP3857899B1 (en) 2024-03-13
US20210400314A1 (en) 2021-12-23
EP3629585A1 (en) 2020-04-01
KR102641527B1 (ko) 2024-02-28
TW202029742A (zh) 2020-08-01
EP3857899A1 (en) 2021-08-04
CN113170213A (zh) 2021-07-23
WO2020064381A1 (en) 2020-04-02

Similar Documents

Publication Publication Date Title
US10846913B2 (en) System and method for infinite synthetic image generation from multi-directional structured image array
BR112021005393A2 (pt) aparelho de síntese de imagens, aparelho para gerar um fluxo de dados de imagem, método para sintetizar uma imagem, método para gerar um fluxo de dados de imagem e produto de programa de computador
US10540773B2 (en) System and method for infinite smoothing of image sequences
US20190220991A1 (en) Multi-directional structured image array capture on a 2d graph
US10474227B2 (en) Generation of virtual reality with 6 degrees of freedom from limited viewer data
BR112020013511A2 (pt) aparelho para gerar um fluxo de bits de dados de imagem, método para gerar um fluxo de bits de dados de imagem e produto de programa de computador
Thatte et al. Depth augmented stereo panorama for cinematic virtual reality with head-motion parallax
BR112019027116A2 (pt) aparelho para gerar uma imagem, aparelho para gerar um sinal de imagem, método para gerar uma imagem, método para gerar um sinal de imagem e sinal de imagem
US11393113B2 (en) Hole filling for depth image based rendering
JP7480163B2 (ja) 画像の奥行きマップの処理
BR112020001453A2 (pt) aparelho e método para gerar uma representação de uma cena em imagem tridimensional em mosaico e produto de programa de computador
BR112019027824A2 (pt) aparelho e método para gerar uma imagem, e produto de programa de computador
US11670039B2 (en) Temporal hole filling for depth image based video rendering
BR112021000289A2 (pt) Aparelho para gerar imagens de uma cena, método para gerar imagens de uma cena, e produto de programa de computador
JP7224350B2 (ja) 画像キャプチャ装置及び画像キャプチャ方法
BR112021014627A2 (pt) Aparelho e método para renderizar imagens a partir de um sinal de imagem que representa uma cena, aparelho e método para gerar um sinal de imagem que representa uma cena, produto de programa de computador, e sinal de imagem
CN113170213B (zh) 图像合成
BR112021014724A2 (pt) Aparelho para renderizar imagens, aparelho para gerar um sinal de imagem, método para renderizar imagens, método para gerar um sinal de imagem e produto de programa de computador
JP7493496B2 (ja) 画像合成
US11823323B2 (en) Apparatus and method of generating an image signal
RU2778456C2 (ru) Устройство и способ формирования двоичного потока данных изображения
BR112021007522A2 (pt) aparelho gerador de imagens, método de geração de imagens e produto de programa de computador