WO2019024521A1 - 一种图像的处理方法、终端和服务器 - Google Patents
一种图像的处理方法、终端和服务器 Download PDFInfo
- Publication number
- WO2019024521A1 WO2019024521A1 PCT/CN2018/081177 CN2018081177W WO2019024521A1 WO 2019024521 A1 WO2019024521 A1 WO 2019024521A1 CN 2018081177 W CN2018081177 W CN 2018081177W WO 2019024521 A1 WO2019024521 A1 WO 2019024521A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- sub
- image
- area
- latitude
- division
- Prior art date
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 13
- 238000005070 sampling Methods 0.000 claims abstract description 157
- 238000000034 method Methods 0.000 claims abstract description 116
- 230000005540 biological transmission Effects 0.000 claims abstract description 40
- 238000010586 diagram Methods 0.000 claims description 81
- 238000013507 mapping Methods 0.000 claims description 11
- 238000012952 Resampling Methods 0.000 claims description 5
- 238000004806 packaging method and process Methods 0.000 claims description 3
- 238000013461 design Methods 0.000 description 41
- 230000008569 process Effects 0.000 description 32
- 238000012545 processing Methods 0.000 description 32
- 238000004891 communication Methods 0.000 description 18
- 230000006870 function Effects 0.000 description 13
- 238000005516 engineering process Methods 0.000 description 6
- 238000005192 partition Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 238000005538 encapsulation Methods 0.000 description 4
- 238000000638 solvent extraction Methods 0.000 description 4
- 238000012546 transfer Methods 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 239000011521 glass Substances 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 108091026890 Coding region Proteins 0.000 description 1
- 108010023321 Factor VII Proteins 0.000 description 1
- 108010080865 Factor XII Proteins 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- AWSBQWZZLBPUQH-UHFFFAOYSA-N mdat Chemical compound C1=C2CC(N)CCC2=CC2=C1OCO2 AWSBQWZZLBPUQH-UHFFFAOYSA-N 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000006798 recombination Effects 0.000 description 1
- 238000005215 recombination Methods 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/06—Topological mapping of higher dimensional structures onto lower dimensional surfaces
- G06T3/067—Reshaping or unfolding 3D tree structures onto 2D planes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/234363—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by altering the spatial resolution, e.g. for clients with a lower screen resolution
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/597—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/06—Topological mapping of higher dimensional structures onto lower dimensional surfaces
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/115—Selection of the code volume for a coding unit prior to coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/117—Filters, e.g. for pre-processing or post-processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/119—Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/132—Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/162—User input
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/167—Position within a video image, e.g. region of interest [ROI]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/174—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/239—Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
- H04N21/2393—Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/266—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
- H04N21/2668—Creating a channel for a dedicated end-user group, e.g. insertion of targeted commercials based on end-user profiles
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/442—Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
- H04N21/44213—Monitoring of end-user related data
- H04N21/44218—Detecting physical presence or behaviour of the user, e.g. using sensors to detect if the user is leaving the room or changes his face expression during a TV program
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network 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/65—Transmission of management data between client and server
- H04N21/658—Transmission by the client directed to the server
- H04N21/6587—Control parameters, e.g. trick play commands, viewpoint selection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/816—Monomedia components thereof involving special video data, e.g 3D video
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8456—Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
Definitions
- the present application relates to the field of media standards and media application technologies, and in particular, to an image processing method, a terminal, and a server.
- 360-degree panoramic video is multi-angle shooting of objects by multiple cameras, supporting multi-angle playback.
- the image signal can be virtualized as a spherical signal. As shown in FIG. 1, the spherical image signals at different positions in the spherical surface can represent different viewing angle contents.
- the virtual spherical image signal cannot be visually seen by the human eye, and therefore it is necessary to represent the three-dimensional spherical image signal as a two-dimensional planar image signal, for example, expressed in the form of a latitude and longitude diagram, a cube, or the like.
- These representations actually map the spherical image signal to a two-dimensional image through some mapping method, making it an image signal that can be visually seen by the human eye.
- the most commonly used visual image format is a latitude and longitude image.
- the image is collected by uniformly sampling the spherical image signal according to the longitude angle in the horizontal direction and uniformly sampling according to the latitude angle in the vertical direction. Taking the spherical image signal of the earth as an example, the obtained two-dimensional mapping image is as shown in FIG. 2 . Show.
- the spherical image signal is a 360-degree panoramic image, while the human eye's viewing angle is typically about 120 degrees, so the effective spherical signal seen by the human eye is about 22% of the panoramic signal.
- VR terminal devices such as VR glasses
- VR glasses can support a single viewing angle of between 90 degrees and 110 degrees, which can achieve a better user viewing experience.
- the image content information in a single viewing angle occupies a small portion of the entire panoramic image when the user views the image, the image information outside the viewing angle is not used by the user, and if all the panoramic images are transmitted, it is unnecessary. The bandwidth is wasted. Therefore, in the encoding and transmission technology of the panoramic video view-based video coding (VDC), the image in the entire video is divided, and the image sub-regions to be transmitted are selected according to the current perspective of the user, thereby achieving Save bandwidth.
- VDC panoramic video view-based video coding
- the above-mentioned panoramic video VR encoding transmission technology may include two types: 1) using a Tile-wise encoding transmission method alone; 2) a hybrid image encoding and a Tile-wise encoding transmission method.
- the Tile-wise code transmission method refers to dividing an image sequence into some image sub-regions, and independently coding all sub-regions to generate single or multiple code streams.
- the method for evenly dividing the latitude and longitude image includes uniformly dividing the latitude and longitude image into a plurality of tiles in the width and height directions.
- the client calculates the angle of view according to the position of the user's perspective.
- the range covered by the image and according to the range, the tile information to be transmitted by the image, including the position and size of the Tile in the image, is requested, and the code stream corresponding to the Tile is requested from the server for transmission, so that the client is The current perspective is rendered and displayed.
- the sampling rate of the image near the equator is higher, and the sampling rate of the image in the two poles is lower, that is, the image pixel redundancy near the equator is lower, and the image pixel redundancy of the two pole parts is higher. High, and the higher the latitude, the greater the redundancy.
- the latitude and longitude map is used for uniform division, the pixel redundancy problem of the latitude and longitude map at different latitudes is not taken into account, and the same condition is the same for each image block. Encoding and transmission under resolution, the coding efficiency is low, and the transmission bandwidth is also wasted.
- the embodiment of the present invention provides an image processing method, a terminal, and a server, which can solve the problem of low coding efficiency and bandwidth waste during code transmission by uniformly dividing the image by using the latitude and longitude image during image sampling.
- an image processing method which is applied to a server, and includes: a horizontal and vertical division and a vertical division of a warp and a latitude or a spherical image of an image to be processed to obtain respective sub-regions of a warp and a latitude or a spherical image, wherein the horizontal division
- the division position is a preset latitude
- the division position of the longitudinal division is determined by the latitude
- at least two longitudinal division intervals exist in the area formed by the adjacent lateral division division positions
- the longitudinal division interval is adjacent longitudinal division The distance between the positions is divided; the obtained images of the respective sub-areas are encoded.
- this application can be vertically divided according to a plurality of longitudinal division intervals, which can make the sub-regions of the image more The size of the partition is larger, the larger the sub-area is, the coding efficiency is improved when encoding, and the occupied bandwidth when the server transmits the code stream to the terminal after encoding is reduced.
- the divisional position of the longitudinal division is determined by the latitude including: the higher the latitude at which the longitudinally divided division position is, the larger the vertical division interval. In this way, due to the difference of the latitude of the sub-area, the larger the sub-area with higher latitude, the coarser the division, the better the coding transmission efficiency and the smaller the transmission bandwidth.
- the method before encoding the obtained images of the respective sub-regions, further comprises: sampling the images of the sub-regions in the horizontal direction according to the first sampling interval; wherein the latitude corresponding to the sub-regions is more High, the first sampling interval is larger; encoding the obtained images of the respective sub-regions includes: encoding the images of the sampled sub-regions. Since the pixel near the equator of the latitude and longitude map has low pixel redundancy, the pixel redundancy of the image of the two poles is high. If each sub-area is encoded and transmitted at the same resolution, the transmission bandwidth is wasted, and the decoding side is redundant.
- Yu Gao will make the decoding end have high requirements for decoding capability and low decoding speed.
- the present application can perform horizontal sampling before encoding, and when horizontally sampling, the higher the latitude corresponding to the sub-region, the larger the first sampling interval, that is, the sub-region with high latitude is down-sampled, that is, compressed sampling.
- the pixel redundancy of the high-latitude sub-area transmitted before encoding can be reduced to achieve the purpose of reducing the bandwidth, and the downsampling reduces the pixel value of the coded transmission, so that the decoding end requires less decoding capability and the decoding is complicated.
- the degree of decline is such that the decoding speed is improved.
- the method before encoding the obtained images of the respective sub-regions, the method further comprises: sampling the images of the sub-regions in the longitudinal direction according to the second sampling interval.
- the second sampling interval may be the same as the interval between the pre-sampling sub-regions, that is, the original sampling is maintained in the vertical direction, or may be smaller than the interval between the pre-sampling sub-regions, that is, down-sampling in the longitudinal direction.
- the encoding may also be performed. The transmission bandwidth is small, the complexity of decoding at the decoding end is reduced, and the decoding speed is improved.
- the method further includes: The image of the sub-area is mapped to a two-dimensional planar image according to a preset size; the image of the sub-area is sampled laterally according to the first sampling interval, including: the two-dimensional planar image of the image mapping of the sub-region is in the horizontal direction according to the first sampling interval Sampling.
- the server collects a spherical image from the shooting device, it can first map the sub-area image of the spherical image to the two-dimensional latitude and longitude image, and then downsample the latitude and longitude image, so that the server directly collects from the shooting device.
- the method before encoding the image of each sub-region after sampling, the method further comprises: adjusting the position of each sub-region after the sampling, so that the image of the adjusted sub-regions is spliced into an image.
- the lateral edges are aligned and the longitudinal edges are aligned.
- the sub-areas can be numbered sequentially in the spliced image, so that the server and the terminal can perform transmission processing on each sub-area according to the number of each sub-area.
- encoding the image of each sub-region after sampling includes encoding the stitched image tiles.
- a single code stream can be generated for storage, or the single code stream can be cut to obtain a plurality of sub-areas for storage.
- the method further comprises: separately coding the code streams corresponding to the images of the respective sub-regions obtained by the encoding, and encoding the respective sub-regions.
- Position information wherein the encoded position information of all the sub-areas and the code streams of all the sub-areas exist in one track; or the position information and the code stream of each of the encoded sub-areas exist in the respective tracks; or The location information of all the encoded sub-areas exists in the media presentation description (MPD); or the location information of all the sub-areas encoded is present in the private file, and the address of the private file exists in the MPD; or, the encoded The location information of each sub-area exists in the auxiliary enhancement information (SEI) of the code stream of each sub-area.
- SEI auxiliary enhancement information
- each sub-region after sampling forms a sampled latitude and longitude map
- the position information includes the sub-region in the latitude and longitude diagram.
- the terminal can perform image rendering and rendering when playing the display according to the position and size of the sub-area.
- the private file further includes information for characterizing the correspondence of the number of the user's viewpoint to the sub-area covered by the perspective of the user's viewpoint.
- the terminal determines the user view point
- the sub-area covered by the view angle of the view point can be directly determined according to the corresponding relationship, so that the decoding process is performed according to the code stream of the sub-area, and the decoding speed of the terminal decoding can be improved.
- the private file further includes information for indicating the number of sub-areas to be preferentially displayed in the sub-area covered by the user's perspective, information of the sub-area number to be preferentially displayed, and sub-area number for the sub-priority display. Information and information on sub-area numbers that are not displayed.
- the terminal may preferentially acquire the image of the sub-area near the viewpoint for priority display, and discard the priority display. Image data for the sub-area.
- the latitude and longitude map includes a latitude and longitude map corresponding to the left eye and a latitude and longitude map corresponding to the right eye; before the horizontal and vertical division of the latitude and longitude map or the spherical image of the image to be processed, the method further includes: The latitude and longitude map corresponding to the eye is segmented with the latitude and longitude map corresponding to the right eye; the latitude and longitude map or the spherical map of the image to be processed is divided horizontally and vertically, including: horizontally dividing and vertically dividing the latitude and longitude map corresponding to the left eye, and rightward The latitude and longitude map corresponding to the eye is divided horizontally and vertically. In this way, for the 3D video image, the bandwidth can be reduced and the efficiency of the code transmission can be improved according to the sub-area division mode of the present application.
- the method further includes: transmitting a code stream corresponding to the image of each sub-area obtained by the encoding to the terminal; or receiving the view information sent by the terminal, and acquiring the sub-area corresponding to the view information according to the view information And transmitting the code stream of the sub-area corresponding to the view information to the terminal; or receiving the number of the sub-area sent by the terminal, and transmitting the code stream corresponding to the number of the sub-area to the terminal.
- the terminal may obtain the code stream corresponding to the image of the desired sub-area locally, or may send the code stream corresponding to the sub-area to the terminal after the server determines the sub-area according to the view information, or the terminal may determine the required After the number of the sub-area is notified to the server, the server sends the code stream corresponding to the sub-area to the terminal, which can reduce the computing load of the server.
- the latitude and longitude map is a latitude and longitude map of a 360-degree panoramic video image, or a portion of a latitude and longitude map of a 360-degree panoramic video image; or a spherical map of a 360-degree panoramic video image, or a 360-degree panoramic video Part of the spherical image of the image. That is, the division of the sub-areas in the present application can also be applied to the division of the 180-degree semi-panoramic video image, thereby reducing the bandwidth and improving the coding transmission efficiency of the 180-degree semi-panoramic video image transmission.
- a method for processing an image is applied to a terminal, including: determining location information of each sub-region of the panoramic image; and determining, according to the determined location information of each sub-region, a sub-region covered by the current perspective in the panoramic image. Position information, and determining a first sampling interval of the sub-area; acquiring a code stream corresponding to the sub-area covered by the current view according to the determined sub-area position information of the current view; decoding the code stream to obtain a sub-area covered by the current view An image of the region; the decoded image is resampled according to the determined position information of the sub-area covered by the current view and the first sampling interval, and the resampled image is played.
- the sampling interval may be changed according to the position of the sub-region, and the sub-region is uniformly divided as in the prior art, and the image is decoded according to the predetermined sampling interval during decoding.
- the terminal of the present application may re-sample the image according to different sampling intervals. , can improve the display speed of the decoder image.
- determining location information of each sub-area of the panoramic image includes: receiving first information sent by the server, where the first information includes a trajectory of each sub-area of the panoramic image and a code stream of each sub-area, the trajectory includes a panorama Position information of all sub-areas of the image; according to the trajectory, position information of each sub-area in the panoramic image is obtained.
- determining location information of each sub-area in the panoramic image includes: receiving a media presentation description (MPD) sent by the server, where the MPD includes location information of each sub-area, or the MPD includes a private file.
- the address, and the private file includes location information of each sub-area; parsing the MPD to obtain location information of each sub-area.
- MPD media presentation description
- the location information of the sub-region exists in the auxiliary enhancement information (SEI) of the code stream corresponding to the sub-region.
- SEI auxiliary enhancement information
- the code stream corresponding to the sub-area covered by the current view is obtained, including: acquiring a code stream corresponding to the sub-area covered by the current view from the memory of the terminal; or requesting the server to obtain the sub-area covered by the current view.
- the code stream corresponding to the area is obtained, including: acquiring a code stream corresponding to the sub-area covered by the current view from the memory of the terminal; or requesting the server to obtain the sub-area covered by the current view.
- the requesting, by the server, the code stream corresponding to the sub-area covered by the current view includes: transmitting information indicating the current view to the server, and receiving a code stream corresponding to the sub-area covered by the current view sent by the server; Or, according to the protocol preset by the terminal and the server, the code stream corresponding to the sub-area covered by the current view is obtained from the server, and the protocol includes a correspondence between the view and the sub-area covered by the view, so that the terminal can obtain the service from the service according to the corresponding relationship. The speed of the code stream corresponding to the sub-area.
- determining the first sampling interval of the sub-area includes: determining a preset sampling interval as a first sampling interval; or receiving a first sampling interval from a server; or, according to each received from a server
- the position information of the sub-areas acquires the first sampling interval, that is, when the position information of each sub-area is different, the corresponding first sampling interval may also be different.
- a third aspect provides a method for processing an image, which is applied to a server, including: a code stream corresponding to an image of each sub-region of a latitude and longitude map or a spherical image of a panoramic image, the sub-region according to a latitude and longitude map or a spherical map of the panoramic image
- the horizontal division and the longitudinal division are obtained, wherein the division position of the horizontal division is a preset latitude, the division position of the vertical division is determined by the latitude, and at least two vertical divisions exist in the area formed by the division positions of the adjacent lateral divisions.
- the interval is a distance between the divided positions of the adjacent longitudinal partitions; and the code stream of the sub-area covered by the current view in the code stream corresponding to the saved image of each of the saved sub-regions requested by the terminal is transmitted to the terminal.
- the code stream corresponding to the image of each sub-area saved by the server is transmitted to the terminal, the manner of vertically dividing the sub-area according to at least two vertical division intervals between different latitudes of the present application can be avoided as in the prior art.
- the present application can be vertically divided according to a plurality of vertical division intervals, which can make the sub-regions of the image have multiple sizes, the larger the division interval, the larger the sub-region, the coding efficiency during encoding is improved, and the coded server is improved.
- the occupied bandwidth when transmitting the code stream to the terminal is reduced.
- the image corresponding to the sub-area stored in the server is sampled in the horizontal direction according to the first sampling interval before being encoded; wherein the higher the latitude corresponding to the sub-area, the larger the first sampling interval Or, it is sampled in the longitudinal direction at the second sampling interval.
- a server including: a dividing unit, configured to perform horizontal division and vertical division of a warp and a weft or a spherical image of an image to be processed to obtain respective sub-regions of a warp and a weft or a spherical image, wherein the division of the horizontal division
- the position is a preset latitude
- the division position of the longitudinal division is determined by the latitude
- at least two longitudinal division intervals exist in the area formed by the adjacent lateral division division positions
- the longitudinal division interval is the division position of the adjacent longitudinal division.
- the distance between the coding units is used to encode the obtained images of the respective sub-regions.
- the divisional position of the longitudinal division is determined by the latitude including: the higher the latitude at which the longitudinally divided division position is, the larger the vertical division interval.
- the sampling unit is further configured to: sample the image of the sub-area in the horizontal direction according to the first sampling interval; wherein, the higher the latitude corresponding to the sub-area, the larger the first sampling interval;
- the coding unit is configured to: encode the image of each sub-region after sampling.
- the sampling unit is further configured to: sample the image of the sub-area in the longitudinal direction according to the second sampling interval.
- the sampling unit is further configured to: map the image of the sub-region to a two-dimensional planar image according to a preset size; and the sampling unit is configured to: perform a first-dimensional image of the two-dimensional image of the image of the sub-region according to the first The sampling interval is sampled in the lateral direction.
- the splicing unit is further configured to: adjust the position of each sub-region after sampling, so that the adjusted lateral edges of the images of the sub-regions are aligned, and the longitudinal edges are aligned.
- the coding unit is used to: encode the stitched image tiles.
- the method further includes: a packaging unit, configured to: independently code a code stream corresponding to an image of each sub-region obtained by encoding, and encode location information of each sub-region; wherein, all the encoded sub-regions The location information of the area and the code stream of all the sub-areas exist in one track; or the position information and the code stream of each of the encoded sub-areas exist in respective tracks; or the position information of all the sub-areas after the coding exists
- the area's code stream is in the auxiliary enhancement information (SEI).
- SEI auxiliary enhancement information
- each sub-region after sampling forms a sampled latitude and longitude map
- the position information includes the sub-region in the latitude and longitude diagram.
- the position information includes a position of the sub-region in the spherical image and a latitude and longitude range, and the sub-region is in the spliced image Location and size.
- the private file further includes information for characterizing the correspondence of the number of the user's viewpoint to the sub-area covered by the perspective of the user's viewpoint.
- the private file further includes information for indicating the number of sub-areas to be preferentially displayed in the sub-area covered by the user's perspective, information of the sub-area number to be preferentially displayed, and sub-area number for the sub-priority display. Information and information on sub-area numbers that are not displayed.
- the latitude and longitude map includes a latitude and longitude map corresponding to the left eye and a latitude and longitude map corresponding to the right eye; and a dividing unit is configured to: divide the latitude and longitude map corresponding to the left eye and the latitude and longitude map corresponding to the right eye; It is used for: horizontally dividing and longitudinally dividing the warp and weft diagram corresponding to the left eye, and horizontally dividing and vertically dividing the warp and weft diagram corresponding to the right eye.
- the transmission unit is further configured to: send the code stream corresponding to the image of each sub-area obtained by the encoding to the terminal; or receive the view information sent by the terminal, and obtain the view information corresponding to the view information.
- the sub-area transmits the code stream of the sub-area corresponding to the view information to the terminal; or receives the number of the sub-area sent by the terminal, and sends the code stream corresponding to the number of the sub-area to the terminal.
- the latitude and longitude map is a latitude and longitude map of a 360-degree panoramic video image, or a portion of a latitude and longitude map of a 360-degree panoramic video image; or a spherical map of a 360-degree panoramic video image, or a 360-degree panoramic video Part of the spherical image of the image.
- the fifth aspect provides a terminal, including: an acquiring unit, configured to determine location information of each sub-area of the panoramic image; the acquiring unit is further configured to: determine, according to the determined location information of each sub-area, the sub-area covered by the current perspective Position information in the panoramic image, and determining a first sampling interval of the sub-area; the acquiring unit is further configured to: acquire the code stream corresponding to the sub-area covered by the current viewing angle according to the determined sub-area position information of the current viewing angle; And used for decoding the code stream to obtain an image of the sub-area covered by the current view; a resampling unit, configured to resample the decoded image according to the determined position information of the sub-area covered by the current view and the first sampling interval ; playback unit for re-sampling images for playback.
- an acquiring unit configured to determine location information of each sub-area of the panoramic image
- the acquiring unit is further configured to: determine, according to the determined location information of each sub-area, the sub-
- the acquiring is used for: receiving, by the server, first information, where the first information includes a trajectory of each sub-area of the panoramic image and a code stream of each sub-area, where the trajectory includes positions of all sub-areas of the panoramic image.
- the information acquisition unit is further configured to obtain location information of each sub-area in the panoramic image according to the trajectory.
- the acquiring is used to: receive a media presentation description (MPD) sent by the server, where the MPD includes location information of each sub-area, or the address of the private file is included in the MPD, and the private file includes each sub- Location information of the area; parsing the MPD to obtain location information of each sub-area.
- MPD media presentation description
- the location information of the sub-region exists in the auxiliary enhancement information (SEI) of the code stream corresponding to the sub-region.
- SEI auxiliary enhancement information
- the acquiring unit is configured to: obtain a code stream corresponding to the sub-area covered by the current view from the memory of the terminal; or request the server to obtain the code stream corresponding to the sub-area covered by the current view.
- the acquiring unit is configured to: send information indicating the current perspective to the server, and receive a code stream corresponding to the sub-area covered by the current perspective sent by the server; or, according to a protocol preset by the terminal and the server, The server obtains a code stream corresponding to the sub-area covered by the current view, and the protocol includes a correspondence between the view angle and the sub-area covered by the view.
- the obtaining unit is configured to: determine that the preset sampling interval is the first sampling interval; or receive the first sampling interval from the server.
- a server including: a storage unit, configured to save a code stream corresponding to an image of each sub-area of a panoramic image or a sub-area of the spherical image, and the sub-area is horizontally according to the latitude and longitude map or the spherical image of the panoramic image.
- the division and the longitudinal division are obtained, wherein the division position of the horizontal division is a preset latitude, the division position of the vertical division is determined by the latitude, and at least two longitudinal division intervals exist in the area formed by the adjacent division positions of the lateral division, The longitudinal division interval is a distance between the division positions of the adjacent longitudinal divisions; and the transmission unit is configured to send, to the terminal, a code stream of the sub-region covered by the current perspective in the code stream corresponding to the saved image of each saved sub-region requested by the terminal.
- the image corresponding to the sub-area stored in the server is sampled in the horizontal direction according to the first sampling interval before being encoded; wherein the higher the latitude corresponding to the sub-area, the larger the first sampling interval Or, it is sampled in the longitudinal direction at the second sampling interval. That is to say, sub-sampling of the high-latitude sub-regions in the horizontal direction, that is, compression sampling, can reduce the image pixel redundancy of the high-latitude sub-regions transmitted before encoding, thereby reducing the bandwidth and simultaneously down-sampling.
- the pixel value required for the coded transmission is reduced, so that the decoding end has lower requirements on the decoding capability, and the decoding complexity is lowered, so that the decoding speed is improved.
- an embodiment of the present application provides a computer storage medium for storing computer software instructions used by the server, including a program designed to perform the above aspects.
- an embodiment of the present application provides a computer storage medium for storing computer software instructions used by the terminal, including a program designed to perform the above aspects.
- embodiments of the present application provide a computer program product comprising instructions that, when run on a computer, cause the computer to perform the methods of the above aspects.
- An embodiment of the present application provides a method, a terminal, and a server for processing an image, including: dividing a latitude and longitude image or a spherical surface of a to-be-processed image into a horizontal division and a longitudinal division to obtain respective sub-regions of the warp and latitude diagram or the spherical plane, wherein the horizontal division
- the division position is a preset latitude
- the division position of the longitudinal division is determined by the latitude
- at least two longitudinal division intervals exist in the area formed by the adjacent lateral division division positions
- the longitudinal division interval is adjacent longitudinal division
- the distance between the positions is divided; the obtained images of the respective sub-areas are encoded.
- this application can be vertically divided according to a plurality of longitudinal division intervals, which can make the sub-regions of the image more The size of the partition is larger, the larger the sub-area is, the coding efficiency is improved when encoding, and the occupied bandwidth when the server transmits the code stream to the terminal after encoding is reduced.
- FIG. 1 is a schematic diagram of a 360-degree panoramic image signal according to an embodiment of the present application.
- FIG. 2 is a schematic diagram of a schematic diagram of a 360-degree panoramic image signal converted into a latitude and longitude diagram according to an embodiment of the present application;
- FIG. 3 is a schematic diagram of a network architecture according to an embodiment of the present disclosure.
- FIG. 4 is a schematic flowchart of a method for processing an image according to an embodiment of the present application.
- FIG. 5 is a schematic diagram of a latitude and longitude map divided into 42 sub-areas according to an embodiment of the present application.
- FIG. 6 is a schematic diagram of a latitude and longitude map divided into 50 sub-areas according to an embodiment of the present application
- FIG. 7 is a schematic flowchart diagram of a method for processing an image according to an embodiment of the present disclosure.
- FIG. 8 is a schematic diagram of a view area in a latitude and longitude map according to an embodiment of the present application.
- FIG. 9 is a schematic diagram of a sub-area covered by a viewing angle according to an embodiment of the present disclosure.
- FIG. 10 is a schematic flowchart diagram of a method for processing an image according to an embodiment of the present disclosure.
- FIG. 11 is a schematic diagram of a terminal decoding display process according to an embodiment of the present application.
- FIG. 12 is a schematic diagram of partitioning a sub-area of a 3D latitude and longitude map according to an embodiment of the present application.
- FIG. 13 is a schematic diagram of a horizontal division of a warp and a weft diagram of a 180° half panoramic video according to an embodiment of the present application;
- FIG. 14 is a schematic diagram of a sub-area division manner of a 3D 180° half panoramic video according to an embodiment of the present application.
- FIG. 15 is a schematic flowchart diagram of a method for processing an image according to an embodiment of the present disclosure.
- 16 is a schematic diagram of a method for dividing and obtaining an image sub-area in a spherical panoramic signal according to an embodiment of the present disclosure
- FIG. 17 is a schematic flowchart of a method for processing an image according to an embodiment of the present application.
- FIG. 17 is a schematic structural diagram of a server according to an embodiment of the present application.
- FIG. 18 is a schematic structural diagram of a server according to an embodiment of the present application.
- FIG. 19 is a schematic structural diagram of a server according to an embodiment of the present application.
- FIG. 20 is a schematic structural diagram of a terminal according to an embodiment of the present disclosure.
- FIG. 21 is a schematic structural diagram of a terminal according to an embodiment of the present application.
- FIG. 22 is a schematic structural diagram of a terminal according to an embodiment of the present application.
- FIG. 23 is a schematic structural diagram of a server according to an embodiment of the present application.
- FIG. 24 is a schematic structural diagram of a server according to an embodiment of the present application.
- FIG. 25 is a schematic structural diagram of a server according to an embodiment of the present application.
- Panoramic video refers to VR panoramic video, also known as 360-degree panoramic video or 360 video. It is a video that uses multiple cameras to shoot 360 degrees in all directions. When watching video, users can adjust the video up and down. Watch it.
- 3D panoramic video refers to VR panoramic video in 3D format.
- the video includes two 360-degree panoramic videos, one for left-eye display and one for right-eye display. Two videos are displayed for left and right eyes in the same frame.
- the content is slightly different, allowing users to have a 3D effect while watching.
- the latitude and longitude map the Equirectangular Projection (ERP).
- ERP Equirectangular Projection
- One of the panoramic image formats which is a two-dimensional panoramic image that can be used for saving and transmission, which is obtained by uniformly sampling the spherical signals in equal intervals and equal latitude intervals.
- the horizontal and vertical coordinates of the image can be expressed by latitude and longitude, and can be expressed by longitude in the width direction, and the span is 360°; the height can be represented by latitude, and the span is 180°.
- Video decoding The process of restoring a video stream to a reconstructed image according to specific grammar rules and processing methods.
- Video encoding The process of compressing a sequence of images into a stream of code.
- Video coding A general term for video encoding and video decoding.
- the Chinese translation is the same as video encoding.
- Tile refers to the video coding standard, which is a block-shaped coding region obtained by dividing the image to be encoded in High Efficiency Video Coding (HEVC).
- HEVC High Efficiency Video Coding
- One frame of image can be divided into multiple tiles, and multiple tiles together constitute the tile.
- Frame image Each tile can be encoded independently.
- the Tile in the present application may be a Tile to which motion-constrained tile sets (MCTS) technology is applied.
- MCTS motion-constrained tile sets
- MCTS Motion-restricted Tile set is a coding technique for Tile, which limits the motion vector inside Tile during encoding, so that the Tile in the same position in the image sequence does not refer to the Tile area in the time domain. Image pixels outside the location, so each tile in the time domain can be decoded independently.
- Sub-picture The entire image is divided to obtain a part of the original image called a sub-image of the image.
- the sub-images in this application may be sub-images that are square in shape.
- Image sub-area The image sub-area in this application can be used as a general term for a Tile or a sub-image, and can be simply referred to as a sub-area.
- VDC View-based video coding, which is a coding transmission technology for panoramic video coding, that is, a method of encoding transmission based on a viewing angle viewed by a user.
- Tile-wise coding A method of video coding, which divides an image sequence into multiple image sub-regions, and separately encodes all sub-regions to generate a single or multiple code streams.
- the Tile-wise encoding in this application may be a Tile-wise encoding in a VDC.
- Track can be translated as "trajectory”, which refers to a series of samples with time attributes in accordance with the International Standardization Organization (ISO) basic media file format (ISOBMFF) package, such as video track
- ISO International Standardization Organization
- ISOBMFF basic media file format
- Box can be translated as a "box", in the standard refers to an object-oriented building block, defined by a unique type identifier and length. In some specifications it can be called “atoms", including the first definition of MP4.
- the box is the basic unit that makes up the ISOBMFF file, and the box can contain other boxes.
- Supplementary enhancement information is a type of Network Abstract Layer Unit (NALU) defined in the video codec standard (h.264, h.265).
- NALU Network Abstract Layer Unit
- MPD A document specified in the standard ISO/IEC 23009-1, in which the client constructs a HyperText Transfer Protocol (HTTP) - Uniform Resource Locator (URL). Metadata. Include one or more period elements in the MPD, each period element contains one or more adaptation sets, each adaptation set contains one or more representations, each representation contains One or more segments, the client selects an expression based on the information in the MPD and constructs a segmented HTTP-URL.
- HTTP HyperText Transfer Protocol
- URL Uniform Resource Locator
- ISO basic media file format is composed of a series of boxes, which can contain other boxes in the box.
- the metadata box and the media data box are included in the box, the metadata box (moov box) contains the metadata, and the media data box (mdat box) contains the media data.
- the box of metadata and the box of media data can be in the same file or in separate files.
- the embodiments of the present application can be used for processing before panoramic video or partial panoramic video encoding, and for encapsulating the encoded code stream, and corresponding operations and processes are involved in both the server and the terminal.
- the network architecture of the present application may include a server 31 and a terminal 32. Also communicating with the server 31 is a photographing device 33 that can be used to take a 360 degree panoramic video and transmit the video to the server 31.
- the server may perform pre-coding processing on the panoramic video, and then perform encoding or transcoding operations, and then encapsulate the encoded code stream into a transmittable file, and transmit the file to the terminal or the content distribution network.
- the server may also select the content to be transmitted for signal transmission according to information fed back by the terminal (for example, a user perspective or the like).
- the terminal 32 can be an electronic device such as a VR glasses, a mobile phone, a tablet computer, a television, and a computer that can be connected to a network.
- the terminal 32 can receive the data transmitted by the server 31, and perform code stream decapsulation, decoding display, and the like.
- the image is processed by using the latitude and longitude image to uniformly divide the image, resulting in waste of bandwidth of the encoding transmission, decoding capability of the decoding end, and speed limitation.
- the image processing method may be provided, and the method may be based on multiple image sub- The latitude and longitude map of the region is divided and processed, and the corresponding encoding transmission and decoding presentation modes.
- the latitude and longitude of the latitude and longitude diagram is in the range of 0 to 360 degrees
- the longitudinal latitude is in the range of -90 to 90 degrees. Negative degrees indicate south latitude, and positive degrees indicate north latitude.
- the method may include:
- the latitude and longitude map of the image to be processed of the server is horizontally divided, and the divided position of the horizontal division is a preset latitude.
- the image can be a plurality of sequence images of the video.
- the latitude and longitude map of the video obtained by the server according to the video captured by the photographing device is taken as an example in (a) of FIG. 5, and the latitude of the server in the longitudinal direction of the warp and weft diagram is -60°, -30°, 0°, 30°, and The latitude and longitude line at 60° divides the latitude and longitude picture laterally.
- the latitude value is represented by X
- the latitude and longitude of the latitude and longitude map is 0°, and between 90° north latitude and 90° south latitude.
- the latitude and longitude map is divided into 30° and 60° in the north latitude, and the warp and weft map is divided horizontally in the south latitudes of -60° and -30°, and the horizontal division interval is 30°.
- the division interval can also be understood as the division step size.
- the server processes the latitude and longitude image of the image to be vertically divided, and the division position of the longitudinal division is determined by the latitude, and at least two longitudinal division intervals exist in the area formed by the adjacent lateral division division positions, and the longitudinal division interval is the adjacent vertical direction.
- the distance between the divided positions is divided to obtain each sub-region of the warp and latitude chart.
- the longitudinal division interval between different latitudes may be different in the south latitude and longitude portions of the warp and weft diagram, and the longitudinal division interval between the south latitude portion and the corresponding latitude of the north latitude portion may be the same.
- the sub-image of the latitude range of the south latitude portion -90° to -60° and the latitude range of the north latitude portion of 60° to 90° may be vertically spaced by the longitude of 120°, longitudinally Dividing the sub-image to obtain 3 sub-regions; for sub-images with a latitude range of -60° to -30° and between 30° and 60°, the longitudinal division of the sub-image is divided into six sub-regions with a longitude of 60°; The sub-images with a latitude range of -30° to 0° and between 0° and 30° are vertically divided by a longitude of 30°, and the sub-images are vertically divided to obtain 12 sub-regions.
- the longitudinal division interval includes a longitude of 120°, a longitude of 60°, and a longitude of 30°.
- the manner of dividing the sub-images in the above manner is different, and the warp and weft map can be divided into 50 sub-regions.
- the warp and weft map can be divided into 50 sub-regions.
- no longitudinal division is performed, maintaining a single sub-area; for latitude ranges between -60° and -30° And a sub-image between 30° and 60°, with a longitude interval of 30°, longitudinally dividing the sub-image to obtain 12 sub-regions; for a latitude range between -30° and 0° and between 0° and 30°
- the sub-images are divided into longitudinal intervals by a longitude of 30°, and the sub-images are vertically divided to obtain 12 sub-regions.
- the division step includes a longitude of 30° and a longitude of 0°.
- the division step length is 0°, which means that the sub-image is not vertically divided.
- the server encodes the obtained image of each sub-area.
- the present application can avoid the detailed division of features in the prior art, and can vertically divide the warp and latitude diagram according to a plurality of longitudinal division intervals, which can make the sub-area divided into multiple sizes, and the larger the vertical division interval, the larger the sub-area, for example,
- the latitude of the vertical division is higher, the vertical division interval is larger, and the sub-region is larger, the coding efficiency at the time of encoding is improved, and the bandwidth occupied by the server when transmitting the code stream to the terminal is reduced.
- the terminal obtains more redundant pixels, so that the terminal needs to increase the maximum decoding capability, and the decoding speed is also increased.
- the present application can also perform de-redundancy processing on the pixels of the sub-area after non-uniform division, that is, downsampling, so that the pixel points required for encoding transmission are reduced, and the maximum required by the decoding end is required.
- the decoding capability is reduced, which can reduce the decoding complexity and improve the decoding speed of the decoder. Therefore, as shown in FIG. 7, before the step 403, the implementation method of the present application may further include:
- the image of the sub-area of the server is originally sampled in the vertical direction, or the image of the sub-area is sampled in the longitudinal direction according to the second sampling interval.
- the original sampling can be understood as the image longitudinal direction of each sub-area remains unchanged, without scaling. Processed or not processed.
- Sampling according to the second sampling interval for example, downsampling the entire sub-regions in the longitudinal direction, can also be understood as sampling in the longitudinal direction according to the height of the given sub-region.
- the image of the sub-area of the server is sampled in the horizontal direction according to the first sampling interval.
- the first sampling interval and the second sampling interval may be preset on the server side, and the first sampling interval and the second sampling interval may be the same or different.
- the first sampling interval can be understood as the reciprocal of the scaling factor, that is, one pixel point is sampled per multiple pixel points to obtain a scaled image.
- the horizontal sampling is performed, and the first sampling interval is performed.
- the scaling factor is 1/4; for sub-images with latitude range -60° to -30° and latitude range 30° to 60°, lateral downsampling is also performed.
- the scaling factor is 1/2; for sub-images with a latitude range of -30° to 0° and between 0° and 30°, no lateral scaling is performed.
- the resulting sampled image is shown in (b) of FIG. It should be noted that (b) in FIG.
- the first sampling interval is proportional to the latitude when laterally sampling, that is, for the north latitude image portion, the higher the latitude corresponding to the sub-region, the larger the first sampling interval, and likewise, for the southern latitude image portion, the latitude The higher the first sampling interval is.
- the south latitude image portion and the north latitude image portion have the same sampling interval corresponding to the same latitude.
- the size of the sub-area divided and scaled by the warp and weft diagram is different from the schematic diagram of the down-sampling in the longitudinal direction of (b) in FIG.
- the latitudes may also be non-uniform, so that the size of the scaled sub-regions in (b) of FIG. 5 may be broken to the same size, so that the code transmission efficiency of the server during encoding transmission is improved.
- the zoomed sub-area may be re-arranged and combined.
- the method may further include:
- the server adjusts the positions of the sampled sub-areas such that the adjusted lateral edges of the images of the images of the sub-areas are aligned, and the longitudinal edges are aligned.
- the image after the position adjustment can be as shown in (c) of FIG.
- Step 403 can be replaced by:
- the server encodes the image of each sub-region after sampling.
- Sub-areas are encoded.
- Two encoding modes can be included here: (1) Sub-picture coding mode, that is, each sub-picture sequence is independently coded to generate 42 sub-code streams, that is, each sub-picture corresponds to one code stream.
- the sub-image may be the sub-region, that is, the 42 sub-regions are separately coded separately to obtain a code stream corresponding to each sub-region; (2) the entire image is coded in a tile mode, and the MCTS may be used in coding.
- the technique is to generate a single stream of the entire image for storage, or to cut a single stream to obtain 42 substreams for storage.
- the whole image here may be an image obtained by sampling and scaling the source latitude and longitude image, as shown in (b) of FIG. 5, or may be a regular image after recombining the sampled and scaled image, as shown in FIG. 5 ( c).
- the server After the image is encoded, the server also needs to encapsulate the code stream of each sub-region obtained after the encoding. Therefore, the method may further include:
- the server separately encapsulates the code streams corresponding to the images of the respective sub-areas obtained by the encoding, and encodes the location information of each sub-area.
- the server can separately package the code streams of all sub-areas in one track, that is, track, for example, in a tile track, or in a corresponding track.
- the location information of the sub-area can be understood as the description information of the sub-area division manner, and the location information of all sub-areas encoded and the code stream of all sub-areas may exist in one track; or the location information of each sub-area after coding And the code stream exists in the respective track; or the location information of all the encoded sub-areas exists in the media presentation description (MPD); or the location information of all the sub-areas after the coding may exist in the private file, and is private The address of the file exists in the MPD; or, the location information of each sub-area after encoding exists in the auxiliary enhancement information (SEI) of the code stream of each sub-area.
- SEI auxiliary enhancement information
- each sub-region after sampling forms a sampled latitude and longitude map
- the position information includes the position and size of the sub-region in the latitude and longitude map, and the sub-region.
- the position and size in the sampled latitude and longitude map; or, the position information includes the position and size of the sub-area in the latitude and longitude map, and the position and size of the sub-area in the spliced image.
- the size can include width and height.
- the location information of all the sub-areas is saved in a track, and the description information of all sub-area division manners may be added in the track of the spliced image, for example, the moov box in the track of the spliced image is added.
- RectRegionPacking(i): indicates that the division information of the i-th sub-area is described.
- Proj_reg_width[i], proj_reg_height[i] describes the corresponding width and height of the i-th sub-region in the sampled image in the source image, ie, the latitude and longitude map before unsampling (for example, (a) in 5), for example, description
- the sub-region in (b) of FIG. 5 corresponds to the width and height in (a) of FIG. 5, for example, for the width x height, that is, the 3840x1920 latitude and longitude diagram, and the upper left corner of the (b) of FIG.
- the width and height of a sub-area in the source image are (1280, 320).
- Proj_reg_top[i], proj_reg_left[i] describes the corresponding position of the upper left pixel of the i-th sub-region of the sampled image in the source image, for example, the upper left point of the sub-region in (b) of FIG. 5 is described.
- the corresponding position in (a) of FIG. 5, such as the position of the first sub-area in the upper left corner in (b) of FIG. 5, in the source image is (0, 0). This position is obtained with the (0,0) coordinates of the upper left corner of the source image.
- Transform_type[i] Describes the transformation of the i-th sub-region from the corresponding source image position in the sampled image, for example, the i-th sub-region is the corresponding region in the source image after untransformed/90-degree rotation/180-degree rotation/270 degrees Rotate/horizontal mirroring/horizontal mirroring after 90 degree rotation/horizontal mirroring after 180 degree rotation/horizontal mirroring after 270 degree rotation.
- Packed_reg_width[i], packed_reg_height[i] describes the width and height of the i-th sub-area in the regular image after combining in the sampled image, that is, the width and height of the sub-area in (c) of FIG.
- the width and height of the first sub-area in the upper left corner in (b) of FIG. 5 in the regular image after combination are (320, 320).
- the image after the sub-region combination is (b) in FIG. 5, and the width and height refers to the width and height in (b) in the image 5.
- Packed_reg_top[i], packed_reg_left[i] describes the relative position of the upper left pixel of the i-th sub-region in the sampled image in the regular image after the sub-region combination, that is, each of (c) in FIG. The top left position of the subarea. It should be noted that, when the above-described step 406 is not performed, the image after the sub-region combination is (b) in FIG. 5, and the position refers to the position in (b) in the image 5.
- SubPictureCompositionBox extends TrackGroupTypeBox('spco') ⁇
- Track_x, track_y describes the position of the upper left pixel of the sub-area of the current track in the regular image after the sub-area combination, that is, the upper left point position of the current sub-area in (c) of FIG.
- Track_width, track_height describes the width and height of the sub-region of the current track in the regular image after the sub-region combination, that is, the width and height of the current sub-region in (c) of FIG. 5;
- composition_width, composition_height describes the width and height of the regular image after the sub-region combination, that is, the image width and height in (c) of FIG.
- Proj_tile_x, proj_tile_y describes the position of the upper left pixel of the sub-area of the current track in the source image, that is, the upper left point position of the current sub-area in (a) of FIG.
- Proj_tile_width, proj_tile_height describes the width and height of the sub-area of the current track in the source image, that is, the width and height of the current sub-area in (a) of FIG. 5;
- Proj_width, proj_height describes the source image width and height, that is, the image width and height in (a) of Figure 5.
- Manner 3 The location information of all sub-areas is stored in the MPD, that is, the manner in which the sub-areas are divided in the MPD.
- the syntax in MPD can be:
- the sub-region is used to describe the position of the image in the corresponding code stream in the source video image by means of a 2D image.
- a 0 indicates the source identifier, and the source identifier value is the same as the homologous;
- "0, 30, 0" indicates the coordinates of the center point of the region corresponding to the sub-region on the spherical surface (yaw angle, pitch angle, rotation angle); 120, 30" indicates the width and height of the sub-area.
- Method 4 The location information of all sub-areas is saved in the private file, and the address of the private file is saved in the MPD. That is, the address of the private file storing the description information of the sub-area is written into the MPD by means of specifying the file link in the MPD.
- the syntax can be as follows:
- the partition information of the subregion is saved as a private file tile_info.dat.
- the data of the sub-area division information saved in the file may be specified by the user, and is not limited herein.
- the saved content may be in one of the following ways:
- Tile_num indicates the number of divided sub-areas.
- Pic_width indicates the width of the source image, that is, the width of the image in (a) in Fig. 5.
- Pic_height indicates the height of the source image, that is, the height of the image in (a) in Fig. 5.
- Comp_width indicates the width of the regular image after the sub-region combination, that is, the width of the image in (c) in FIG.
- Comp_height indicates the height of the regular image after the sub-region combination, that is, the height of the image in (c) in FIG. 5.
- Tile_pic_width[] An array representing the width of each sub-area in the source image. The number of elements should be the tile_num value.
- Tile_pic_height[] An array indicating the height of each sub-area in the source image. The number of elements should be the tile_num value.
- Tile_comp_width[] An array indicating the width of each sub-region in the regular image after the sub-region is combined. The number of elements should be the tile_num value.
- Tile_comp_height[] An array indicating the height of each sub-region in the regular image after the sub-region is combined. The number of elements should be the tile_num value.
- the Uniform Resource Locator (URL) of the private file is written into the MPD by specifying a new EssentialProperty attribute Tile@value.
- the Tile@value attribute description can be as shown in Table 1.
- Tile@value Description Information Specifying information of tiles
- Manner 5 The location information of each sub-area is stored in the auxiliary enhancement information SEI of the code stream of each sub-area. That is, the division manner of the sub-areas is transmitted by writing the position information of the sub-areas to the SEI of the code stream.
- One of the setting information of the division information SEI syntax elements in the image based on the sub-regions can be as shown in Table 2.
- Table 2 SEI syntax elements based on sub-area partitioning information
- Src_pic_width represents the source image width, which is the image width in Figure 5(a).
- Src_pic_height indicates that the source image is high, that is, the image height in Figure 5(a).
- Src_tile_x represents the horizontal coordinate of the upper left corner of the current sub-area on the source image, that is, the abscissa of the current sub-area in (a) of FIG.
- Src_tile_y represents the longitudinal coordinate of the upper left corner of the current sub-region on the source image, that is, the ordinate of the current sub-region in (a) of FIG.
- Src_tile_width indicates the width of the current subregion on the source image.
- Src_tile_height indicates the height of the current sub-area on the source image.
- the packed_pic_width indicates the width of the regular image after the sub-region is combined, that is, the image width in Fig. 5(c).
- the packed_pic_height indicates the height of the regular image after the sub-region combination, that is, the image height in Fig. 5(c).
- the packed_tile_x indicates the horizontal coordinate of the upper left corner of the current sub-area on the combined regular image, that is, the abscissa of the current sub-area in FIG. 5(c).
- the packed_tile_y represents the longitudinal coordinate of the upper left corner of the current sub-area on the combined regular image, that is, the ordinate of the current sub-area in FIG. 5(c).
- Packed_tile_width indicates the width of the current sub-area on the combined regular image.
- Packed_tile_height indicates the height of the current sub-area on the combined regular image.
- the present application can also extend the above manner four, and in the MPD, the URL of the private file storing the location information of the sub-area can also be specified by the new element.
- Expansion method 4 The private file address storing the sub-area division information is written into the MPD by means of the specified file link in the MPD.
- the syntax can be:
- the location information of the sub-area is saved as the private file tile_info.dat, the syntax element ⁇ UserdataList> (see Table 3) is added, and the UserdataURL element is included, and the private file is written into the MPD.
- the private file is obtained by parsing ⁇ UserdataList> to obtain information such as the division manner and location of the sub-area.
- the description information of the sub-area division manner in the foregoing manner 4 may also be extended, and the extension adds a relationship table between the user perspective and the required sub-area for the content in the transmitted private file tile_info.dat, so that the terminal can be faster.
- the saved content can be in one of the following ways:
- the new data in the fourth mode is deg_step_latitude, deg_step_longitude, view_tile_num, viewport_table[][], the meaning of the data is as follows:
- Deg_step_latitude The step size of the viewpoint area divided in the latitude direction, which divides the latitude range from -90° to 90° into multiple viewpoint areas.
- the view area refers to the range of the area to which a certain view belongs on the latitude and longitude map. In the same view point area, the image sub-area code stream obtained by the terminal covering the view area is the same.
- the entire latitude and longitude map is divided into nine viewpoint regions, and both the viewpoint 1 and the viewpoint 2 belong to the fifth viewpoint region, and the viewpoint of the center of the viewpoint region 5 is indicated in FIG. For all viewpoints within the range of the viewpoint area 5, the corresponding angle of view coverage will be calculated as the range covered by the corresponding viewpoint of the center viewpoint.
- Deg_step_longitude The step size of the viewpoint area divided in the longitude direction, which divides the longitude range from 0° to 360° into multiple viewpoint areas. Deg_step_latitude and deg_step_longitude together determine the number of viewpoint regions.
- View_tile_num The maximum number of sub-areas that can be covered when a single perspective changes.
- Viewport_table[][] An array for storing the relationship between a view area and the image sub-area number of the view area.
- the total number of data in the table should be the number of view areas multiplied by view_tile_num.
- the 18 numbers in each row of the data table represent the sub-region numbers corresponding to the coverage of a certain viewpoint.
- the number 0 indicates that the perspective can be overwritten by less than 18 sub-regions, and the vacant value is filled with 0, as shown in FIG.
- the viewpoint is located at a viewing angle of 0° longitude of 150°, and the corresponding sub-areas are sub-regions numbered 5, 6, 7, 13, 14, 15, 16, 25, 26, 27, 28, 35, 36, 37.
- the values in the data table are represented as 5,6,7,13,14,15,16,25,26,27,28,35,36,37,0,0,0.
- the terminal after obtaining the values, the terminal only needs to find the sub-area number in the corresponding table according to the current view point, and can directly decode the sub-area code stream corresponding to the number according to the corresponding relationship without performing calculation, thereby speeding up the processing of the terminal. speed.
- the above-mentioned private file includes the corresponding relationship between the number of the user's viewpoint and the number of the sub-area covered by the perspective of the user's viewpoint.
- the embodiment of the present application may further add the marker data for the optimized presentation of the perspective in the private file tile_info.dat; correspondingly, The arrangement of the data in the data table viewport_table[][] may appear in an optimized form, that is, the closer to the sub-area of the current viewpoint, the number of the sub-area appears in the front position of the corresponding line of the current viewpoint.
- the private file further includes information for indicating the number of sub-areas to be preferentially displayed in the sub-area covered by the user's perspective, information of the sub-area number to be preferentially displayed, information of the sub-area number of the sub-priority display, and Information about the sub-area number that is not displayed.
- the saved content can be in one of the following ways:
- the new data is priority_view_tile_num, and the meaning of the data is: the number of sub-regions to be displayed preferentially under the current viewpoint.
- the data arrangement in the viewport_table[][] table is modified, and the sub-area near the current viewpoint is placed in front of the corresponding line of the current viewpoint, as follows:
- the data in the table is changed to 14, 15, 26, 27, 13, 6, 16, 28, 36 corresponding to the viewing angle of the viewpoint shown in Fig. 9 at a latitude of 0° and a longitude of 150°.
- 25,5,7,35,37,0,0,0,0, sub-area numbers 14, 15, 26, 27 that are closer to the viewpoint are placed in front, and the far sub-areas number 13, 6, 16, 28 , 36, 25 placed in the middle, the farthest sub-area number 5, 7, 35, 37 placed last.
- Sub-areas that are close to the viewpoint are displayed preferentially, and sub-areas that are farther from the viewpoint are not displayed preferentially, and can be displayed with priority.
- the terminal may obtain the encapsulated code stream for decoding and displaying. Therefore, as shown in FIG. 10, the method in this embodiment of the present application may further include:
- the terminal determines location information of each sub-area of the panoramic image.
- the terminal may receive the first information sent by the server, where the first information includes a track of each sub-area of the panoramic image and a code stream of each sub-area, and the track includes location information of all sub-areas of the panoramic image.
- the terminal parses the position information of each sub-area in the panoramic image according to the track analysis.
- the track may be the track of the stitched image in the first mode, and the terminal may parse the location information of all the sub-regions by parsing the syntax defined in the RectRegionPacking(i) in the track of the stitched image.
- the terminal may save the location information of each sub-area according to the foregoing manner for storing the location information of the sub-area, that is, the track corresponding to the sub-area, that is, the tile track, and the terminal may analyze The area defined in the SubPictureCompositionBox in each tile track resolves the position information of the current sub-area.
- the terminal may receive the MPD sent by the server, the MPD includes location information of each sub-area, or an address of the MPD including a private file, and the private file includes location information of each sub-area, and the terminal parses the MPD to obtain the sub-areas of each sub-area. location information.
- the terminal can obtain the code stream corresponding to each sub-area first, the location information of the sub-area exists in the SEI corresponding to the sub-area. That is to say, when the terminal requests the code stream of the required sub-area, the terminal can acquire the location information of the sub-area according to the SEI in the code stream.
- the terminal determines, according to the determined location information of each sub-area, location information of the sub-area covered by the current view in the panoramic image.
- the terminal may acquire the location information of the sub-area covered by the current view in the panoramic image according to the matching relationship of the position information of the sub-area covered by the view angle and the view angle.
- the terminal determines a first sampling interval of the sub-area.
- the terminal may determine that the preset sampling interval is the first sampling interval, or the terminal receives the first sampling interval from the server, or the terminal may obtain the first sampling interval according to the location information of each sub-region received from the server, that is, each
- the location information of the sub-area and the first sampling interval may have a preset calculation rule to obtain a first sampling interval corresponding to each sub-area.
- the calculation rule may be a ratio of a size in the position information of the sub-area in the source image to a size in the position information of the sub-area in the spliced image, that is, a first sampling interval.
- the terminal acquires a code stream corresponding to the sub-area covered by the current view according to the determined sub-area location information of the current view.
- the terminal may directly obtain the code stream of the sub-area covered by the current view from the memory of the terminal.
- the terminal requests the server to obtain a code stream corresponding to the sub-area covered by the current view.
- the terminal may send the information indicating the current view to the server, and the server may obtain the sub-area covered by the current view according to the current view and the location information of the sub-area that can be covered by the current view, and then cover the current view required by the terminal.
- the code stream corresponding to the sub-area is sent to the terminal, for example, the server may send the code stream spliced by the sub-area code stream to be transmitted to the terminal.
- the terminal may obtain the sub-area covered by the current view according to the current view and the position information of the sub-area covered by the current view, and may send the number of the sub-area covered by the current view to the server, and the server may use the number required by the terminal according to the number.
- the code stream of the area is sent to the terminal.
- the terminal may obtain a code stream corresponding to the sub-area covered by the current view from the server according to a protocol preset by the terminal and the server, where the protocol includes a correspondence between the view angle and the sub-area covered by the view. This application does not limit the manner in which the terminal obtains the required code stream.
- the terminal decodes the code stream to obtain an image of the sub-area covered by the current view.
- the server Since the server performs horizontal and vertical division and longitudinal down-sampling processing on the latitude and longitude map, the pixels in the sub-area are de-redundant processed, so that the pixel redundancy of the sub-region to be transmitted is reduced, and the pixel value is reduced. Then, for the decoding terminal, when the code stream of the sub-area covered by the current view is acquired, the decoding capability can be reduced, and the complexity of the decoding is reduced, so that the decoding speed is improved.
- the terminal resamples the decoded image according to the location information of the sub-area covered by the determined current perspective and the first sampling interval.
- the terminal plays the resampled image.
- the terminal can be based on Corresponding relationship between the number of the sub-area and the code stream obtains the code stream corresponding to the required sub-area, including numbers 1, 3, 4, 5, 6, 15, 19, 20, 21, 22, 23, 24, 34, 35 Sub-streams of 36, 37, as shown in (c) of FIG. 11, further, after the terminal decodes the sub-streams, the decoded image may be resampled according to the position information and the first sampling interval, and then The resampled image is played back as shown in (d) of FIG.
- the photographing device communicating with the server may include two groups, one set of photographing devices for acquiring panoramic video of the left eye and another group of photographing devices for acquiring the right eye. Panoramic video.
- the division of the sub-regions of the 3D warp and weft map can be as shown in FIG.
- the latitude and longitude diagram of the left eye is the upper half of Fig. 12, and the latitude and longitude diagram of the right eye is the lower half of Fig. 12.
- the latitude and longitude map corresponding to the left eye can be spliced together with the latitude and longitude map corresponding to the right eye, which is a latitude and longitude map, or can be separated, and is two latitude and longitude maps.
- the server may divide the latitude and longitude map corresponding to the left eye and the latitude and longitude map corresponding to the right eye to perform horizontal division and vertical division of the latitude and longitude diagram corresponding to the left eye, and horizontal division and vertical division of the latitude and longitude diagram corresponding to the right eye.
- the horizontal division of the left-eye latitude and longitude diagram of the 3D latitude and longitude diagram reference may be made to the implementation of the step 401.
- the horizontal division of the latitude and longitude diagram of the right eye may also refer to the implementation manner of the step 401, and details are not described herein.
- the horizontal and vertical division of the left-eye latitude and longitude diagram of the 3D latitude and longitude image reference may be made to the implementation of the step 402.
- the vertical division of the right-eye latitude and longitude diagram may also refer to the implementation of the step 402, and details are not described herein.
- sampling of the sub-regions of the 3D latitude and longitude latitude and longitude latitude and longitude image reference may be made to the implementation of the steps 404 to 405.
- the sampling of the sub-regions of the right-eye latitude and longitude image may also refer to the implementation manners of the steps 404 to 405, and details are not described herein.
- each sub-region is divided into the original image as a sub-image, and each sub-image sequence is independently encoded to generate 84 sub-code streams.
- the third type the left-eye latitude and longitude image and the right-eye latitude and longitude image in the corresponding portion of the sub-region of the same position as a group of sub-regions, the image is spliced and then independently coded to generate 42 sub-code streams.
- the decoding process of the video content by the terminal is different from that described above for the 2D latitude and longitude picture: the position information of the sub-area covered by the current view here includes the left eye image sub-area and the right eye image sub-area position information.
- the code stream of the sub-area covered by the current view includes the code stream of the sub-area in the left-eye latitude and longitude picture and the code stream of the sub-area in the right-eye latitude and longitude picture.
- the value of the current angle of view may take the angle of view of the left eye or the point of view of the right eye, and no limitation is imposed here.
- Resampling is to resample the image of the sub-area covered by the left eye of the current view, and re-sample the image of the sub-area covered by the right eye of the current view, and render the desired left-eye sub-area and right-eye sub-area. display.
- the above method can also be applied to the latitude and longitude map of the 360-degree panoramic video.
- the latitude and longitude map can also be part of the latitude and longitude map of the 360-degree panoramic video image, for example, the division of the warp and longitude map can also be applied to the 180° half-panoramic video.
- the 180° half-panoramic video is a panoramic video with a longitude range of 180° containing half of the panoramic video.
- the manner of horizontally dividing the warp and weft diagram of the 180° half-pan video may refer to the above step 401.
- the achievable manner of the above step 402 may be different for the latitude.
- Sub-images ranging from -90° to -60° and between 60° and 90° can be left without longitudinal division, maintaining a single sub-area; for latitudes ranging from -60° to -30° and between 30° and 60°
- the sub-images are divided into longitudinal divisions with a longitude of 60°, and the sub-images are longitudinally divided to obtain three sub-regions; for sub-images with a latitude range of -30° to 0° and between 0° and 30°, longitudinal division is performed with a longitude of 30°.
- the sub-images are divided vertically to obtain 6 sub-regions.
- the sub-area division of the latitude and longitude map of the entire 180° half-pan video is completed, and a total of 20 sub-areas are obtained.
- the sub-region of the latitude and longitude map of the 180° half-panel video may also be down-sampled and then encoded, which may be the same as the implementation of the above step 404.
- the implementation of the step 405 may be different from that in FIG. 13 ( a)
- the longitudinal direction is unchanged, the lateral sampling is performed, the scaling factor is 1/6;
- the latitude range -60° to Sub-images between -30° and 30° to 60° likewise, longitudinally invariant, down-sampling in the lateral direction, with a scaling factor of 1/2; for latitudes ranging from -30° to 0° and 0° to 30°
- Sub-images are not scaled.
- the resulting zoomed image can be as shown in (b) of FIG.
- the above-mentioned sub-area division method for the warp and latitude diagram of the 180° half-pan video can also be applied to the sub-area division of the latitude and longitude map of the 3D 180° half-pan video, which is similar to the 360° panoramic video, and the latitude and longitude diagram of the 3D180° half-pan video is also The latitude and longitude view of the 180° half panoramic video of the left eye and the latitude and longitude view of the 180° half panoramic video of the right eye.
- the latitude and longitude diagram of the left eye and the latitude and longitude diagram of the right eye can be spliced together, as shown in Fig. 14, the latitude and longitude diagram of the left eye is the left half of Fig.
- the server can The latitude and longitude diagram of the left eye and the latitude and longitude diagram of the right eye are first divided, as shown by the dashed line in FIG. Then, the latitude and longitude diagram of the left eye is divided according to the division of the latitude and longitude diagram of the 180° half-pan video, and the latitude and longitude diagram of the right eye is also divided according to the division of the latitude and longitude diagram of the 180° half-pan video, and finally obtained.
- the 20 sub-regions corresponding to the latitude and longitude map of the left eye and the 20 sub-regions corresponding to the latitude and longitude map of the right eye have a total of 40 sub-regions.
- the server may obtain a latitude and longitude map corresponding to the panoramic video or the semi-panoramic video according to the video signal captured by the photographing device, and the server in the embodiment of the present application may further provide a direct division and obtain an image in the spherical panoramic signal.
- Sub-area method Since the source image is a spherical signal map, or a spherical map, the sub-region division method also changes in the code stream encapsulation mode.
- the spherical area specifies the signal position in a latitude and longitude manner, the agreed longitude range is 0 to 360°, and the latitude range is -90° to 90° (negative degrees indicate south latitude, and positive degrees indicate north latitude).
- the embodiment of the present application provides a method for processing an image, as shown in FIG.
- the server divides the spherical image of the image to be processed into a horizontal division, and the horizontally divided division position is a preset latitude.
- the server may slice the spheroids horizontally at latitudes of -60°, -30°, 0°, 30°, and 60° on the spherical surface, respectively. As shown in (a) of Fig. 16.
- the server processes the spherical image of the image to be vertically divided.
- the division position of the longitudinal division is determined by the latitude, and at least two longitudinal division intervals exist in the area formed by the adjacent lateral division division positions, and the longitudinal division interval is the adjacent vertical direction.
- the distance between the divided positions is divided to obtain each sub-region of the warp and latitude chart.
- the longitudinal division is divided by 120°, and the spherical surface is vertically divided by the longitude line to obtain 3 spherical surfaces.
- the server samples an image of each sub-area.
- the server may first map the image of the sub-area to the two-dimensional plane image according to the preset size, so that the sub-regions of the latitude and longitude map may be sampled according to the first sampling interval and the second sampling interval.
- the mapping from the three-dimensional spherical map to the two-dimensional latitude and longitude map may be: an image of the sub-area divided by the spherical image, uniformly sampled in the longitudinal direction according to the preset size height, and uniformly sampled in the horizontal direction according to the preset size width. . Then, the image of each sub-area after uniform sampling can be sampled in the horizontal direction according to the first sampling interval, and the image is sampled in the vertical direction according to the second sampling interval.
- image signal mapping is performed on all sub-regions on the spherical surface corresponding to sub-regions of (a) in the figure 16 such that each sub-region on the spherical map corresponds to a sub-region of the mapping image, that is, a two-dimensional latitude and longitude map.
- the down-and-down plot is downsampled.
- mapping from spherical signals to sub-area images there is no limitation here.
- One of the ways may be: in the latitude direction, for each spherical sub-region, the spherical signal is in accordance with the preset size of the sub-region image of (b) in FIG.
- Uniform mapping is performed at a high level, and uniform mapping can be understood as uniform sampling.
- the spherical signal In the longitude direction, for a sub-spherical area between latitude range -90° to -60° and 60° to 90°, the spherical signal is downsampled according to 1/4 of the sampling rate in the latitude direction, that is, the scaling factor is 1/ 4; for a spheroidal region between latitude range -60° to -30° and 30° to 60°, the spherical signal is downsampled according to 1/2 of the sampling rate in the latitude direction, that is, the scaling factor is 1/2; For a sub-spherical area with a latitude range of -30° to 0° and between 0° and 30°, the spherical signal is mapped at the same sampling rate in the latitude direction, ie the scaling factor is one.
- the image of the finally obtained sampled latitude and longitude image is as shown in (b) of FIG.
- the server adjusts the positions of the sampled sub-areas such that the adjusted lateral edges of the images of the sub-areas are aligned, and the longitudinal edges are aligned. For example, as shown in (c) of FIG. Step 1504 may also choose not to execute.
- the server encodes the stitched image into a tile.
- step 1505 For the implementation of the step 1505, refer to the foregoing step 407, and details are not described herein again.
- the encapsulation manner of the code stream of each sub-area may be the same as that of the above step 408, and the manner of saving the position information of the sub-area may be the same, except that when the sub-area is When the spherical image of the image to be processed is laterally divided and vertically divided, the sampled sub-regions form a sampled spherical image, and the position information includes the position of the sub-region in the image of the spherical image and the latitude and longitude range, and the sub-region is sampled.
- the position and size in the image of the rear spherical image; or, the position information includes the position of the sub-region in the spherical image and the latitude and longitude range, and the position and size of the sub-region in the spliced image.
- the semantic modification of the variables for the above sub-area partitioning method is as follows:
- Proj_reg_width[i], proj_reg_height[i] describes the corresponding latitude and longitude range of the i-th sub-region in the source image, ie, the spherical map, that is, the sub-region in (b) of FIG. 16 is (a) in FIG.
- the corresponding latitude and longitude range, such as the first sub-area in the upper left corner of (b) in FIG. 16, has a latitude and longitude range in the source image of (120°, 30°).
- Proj_reg_top[i], proj_reg_left[i] describes the corresponding position of the upper left pixel of the i-th sub-region in the spherical map, expressed in latitude and longitude, that is, the upper left point of the sub-region in (b) of FIG. 16 is in FIG.
- the corresponding position in (a) is, for example, the position of the first sub-area in the spherical map is (0°, 90°).
- Proj_tile_width, proj_tile_height describes the latitude and longitude range of the sub-area of the current track in the spherical map, that is, the latitude and longitude range of the current sub-area in (a) of FIG. 16;
- Proj_width, proj_height describes the latitude and longitude range of the spherical image, such as 360° panoramic spherical latitude and longitude range (360°, 180°).
- Pic_width indicates the range of the longitude of the spherical map.
- Pic_height indicates the latitude range of the spherical map.
- Tile_pic_width[] An array representing the longitude range of each sub-area in the spherical map. The number of elements should be the tile_num value.
- Tile_pic_height[] An array representing the latitude range of each sub-region in the spherical map. The number of elements should be the tile_num value.
- Src_pic_width represents the range of the longitude of the spherical map, that is, the range of the longitude of the spherical map in (a) of Fig. 16.
- Src_pic_height represents the latitude range of the spherical image, that is, the latitude range of the spherical image in (a) of Fig. 16.
- Src_tile_width represents the longitude range of the current sub-region on the spherical map.
- Src_tile_height represents the latitude range of the current sub-region on the spherical map.
- the image is less redundant than the manner of evenly dividing the latitude and longitude image, and the image redundancy is reduced, which can greatly improve the transmission efficiency of the tile-wise code.
- the maximum decoding capability required by the terminal decoder is also reduced, which makes it possible to perform higher-resolution source images for encoding transmission and presentation under existing decoding capabilities. Taking a uniform division of 6 ⁇ 3 as an example, the proportion of pixels that need to be transmitted is up to 55.6%. If the resolution of the source image is 4K (4096 ⁇ 2048), the decoder capability needs to reach about 4K ⁇ 1K. With the method described in the present application, the pixel ratio of transmission can be up to 25%.
- the decoding capability of the decoder needs 2Kx1K. Moreover, the performance improves the speed of decoding and playing, and the decoding scheme of the present application is more efficient than the uniform partitioning scheme.
- the embodiment of the present application further provides an image processing method, which is applied to a server, as shown in FIG. 17A, and includes:
- the server saves a code stream corresponding to an image of each sub-region of the panoramic image or a sub-region of the spherical image, and the sub-region is obtained by laterally dividing and vertically dividing the latitude and longitude image or the spherical image of the panoramic image, wherein the horizontally divided dividing position is obtained.
- the division position of the longitudinal division is determined by the latitude, and at least two longitudinal division intervals exist in the area formed by the adjacent lateral division division positions, and the longitudinal division interval is between the adjacent longitudinal division division positions. the distance.
- the server sends, to the terminal, a code stream of the sub-area covered by the current view in the code stream corresponding to the saved image of each saved sub-area requested by the terminal.
- the image corresponding to the sub-area stored in the server is sampled in the horizontal direction according to the first sampling interval before being encoded; wherein the higher the latitude corresponding to the sub-area, the larger the first sampling interval; or, according to the first
- the two sampling intervals are sampled in the longitudinal direction.
- the server in this embodiment can save the code stream corresponding to the image of each sub-area after the image processing by the server in the above embodiment, and the sub-area division mode and sampling adopted by the server for processing the image in the above embodiment
- the process can reduce the occupied bandwidth when transmitting the code stream, reduce the decoding capability of the decoding end, reduce the decoding complexity, and improve the decoding speed.
- the bandwidth occupied by the server in this embodiment is relatively high. The technology will be reduced and the decoding speed of the terminal will be improved.
- each network element such as a server, a terminal, etc.
- each network element includes hardware structures and/or software modules corresponding to each function.
- the present application can be implemented in a combination of hardware or hardware and computer software in combination with the elements and algorithm steps of the various examples described in the embodiments disclosed herein. Whether a function is implemented in hardware or computer software to drive hardware depends on the specific application and design constraints of the solution. A person skilled in the art can use different methods to implement the described functions for each particular application, but such implementation should not be considered to be beyond the scope of the present application.
- the embodiment of the present application may divide the function module into the server, the terminal, and the like according to the foregoing method example.
- each function module may be divided according to each function, or two or more functions may be integrated into one processing module.
- the above integrated modules can be implemented in the form of hardware or in the form of software functional modules. It should be noted that the division of the module in the embodiment of the present application is schematic, and is only a logical function division, and the actual implementation may have another division manner.
- FIG. 17 is a schematic diagram showing a possible structure of a server involved in the foregoing embodiment, where the server 17 includes: a dividing unit 1701, an encoding unit 1702, a sampling unit 1703, A splicing unit 1704, a packaging unit 1705, and a transmission unit 1706.
- the dividing unit 1701 can be used to support the server to execute the processes 401, 402 in FIG. 4, and the encoding unit 1702 can be used to support the server to execute the process 403 in FIG. 4, the process 407 in FIG.
- the sampling unit 1703 can be used to support the server to perform the processes 404, 405 in FIG. 7, the tiling unit 1704 is used to support the server to perform the process 406 in FIG.
- the encapsulation unit 1705 can be used to support the server to perform the process 408 in FIG. All the related content of the steps involved in the foregoing method embodiments may be referred to the functional descriptions of the corresponding functional modules, and details are not described herein again.
- FIG. 18 shows a possible structural diagram of the server involved in the above embodiment.
- the server 18 includes a processing module 1802 and a communication module 1803.
- the processing module 1802 is configured to control and manage the actions of the server.
- the processing module 1802 is configured to support the server to execute the processes 401, 402, 403, 404, 405, 406, 407, and 408 in FIG. 4, and/or for the purposes of this document.
- the communication module 1803 is for supporting communication between the server and other network entities, such as communication with the terminal.
- the server may also include a storage module 1801 for storing program code and data of the server.
- the processing module 1802 may be a processor or a controller, such as a central processing unit (CPU), a general-purpose processor, a digital signal processor (DSP), and an application-specific integrated circuit (Application-Specific). Integrated Circuit (ASIC), Field Programmable Gate Array (FPGA) or other programmable logic device, transistor logic device, hardware component, or any combination thereof. It is possible to implement or carry out the various illustrative logical blocks, modules and circuits described in connection with the present disclosure.
- the processor may also be a combination of computing functions, for example, including one or more microprocessor combinations, a combination of a DSP and a microprocessor, and the like.
- the communication module 13803 can be a transceiver, a transceiver circuit, a communication interface, or the like.
- the storage module 1801 may be a memory.
- the server involved in the embodiment of the present application may be the server shown in FIG.
- the server 19 includes a processor 1912, a transceiver 1913, a memory 1911, and a bus 1914.
- the transceiver 1913, the processor 1912, and the memory 1911 are connected to each other through a bus 1914.
- the bus 1914 may be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus. Wait.
- PCI Peripheral Component Interconnect
- EISA Extended Industry Standard Architecture
- the bus can be divided into an address bus, a data bus, a control bus, and the like. For ease of representation, only one thick line is shown in Figure 19, but it does not mean that there is only one bus or one type of bus.
- FIG. 20 is a schematic diagram showing a possible structure of the terminal involved in the foregoing embodiment.
- the terminal 20 includes: an obtaining unit 2001, a decoding unit 2002, and a resampling unit 2003. And a play unit 2004.
- the obtaining unit 2001 is configured to support the terminal to execute the processes 101, 102, 103, and 104 in FIG. 10.
- the decoding unit 2002 is configured to support the terminal to execute the process 105 in FIG. 10
- the resampling unit 2003 is configured to support the terminal to execute the process in FIG. 106.
- the playing unit 2004 is configured to support the terminal to execute the process 107 in FIG. All the related content of the steps involved in the foregoing method embodiments may be referred to the functional descriptions of the corresponding functional modules, and details are not described herein again.
- FIG. 21 shows a possible structural diagram of the terminal involved in the above embodiment.
- the terminal 21 includes a processing module 2102 and a communication module 2103.
- the processing module 2102 is configured to control management of actions of the terminal, for example, the processing module 2102 is configured to support the terminal to perform the processes 101-106 of FIG. 10, and/or other processes for the techniques described herein.
- the communication module 2103 is for supporting communication between the terminal and other network entities, such as communication with a server.
- the terminal may further include a storage module 2101 for storing program codes and data of the terminal, and a display module 2104 for supporting the terminal to execute the process 107 in FIG.
- the processing module 2102 can be a processor or a controller, such as a CPU, a general purpose processor, a DSP, an ASIC, an FPGA or other programmable logic device, a transistor logic device, a hardware component, or any combination thereof. It is possible to implement or carry out the various illustrative logical blocks, modules and circuits described in connection with the present disclosure.
- the processor may also be a combination of computing functions, for example, including one or more microprocessor combinations, a combination of a DSP and a microprocessor, and the like.
- the communication module 2103 can be a transceiver, a transceiver circuit, a communication interface, or the like.
- the storage module 2101 can be a memory.
- Display module 2104 can be a display or the like.
- the processing module 2102 is a processor
- the communication module 2103 is a transceiver
- the storage module 2101 is a memory
- the display module 2104 is a display
- the terminal involved in the embodiment of the present application may be the terminal shown in FIG.
- the terminal 22 includes a processor 2212, a transceiver 2213, a memory 2211, a display 2215, and a bus 2214.
- the transceiver 2213, the processor 2212, the display 2215, and the memory 2211 are connected to each other through a bus 2214.
- the bus 2214 may be a PCI bus or an EISA bus.
- the bus can be divided into an address bus, a data bus, a control bus, and the like. For ease of representation, only one thick line is shown in FIG. 22, but it does not mean that there is only one bus or one type of bus.
- FIG. 23 is a schematic diagram showing a possible structure of a server involved in the foregoing embodiment.
- the server 23 includes: a storage unit 2301, a transmission unit 2302, and a storage unit 2301.
- the transfer unit 2302 is configured to support the server to execute the process 17A2 in FIG. 17A in the support server executing the process 17A1 in FIG. 17A. All the related content of the steps involved in the foregoing method embodiments may be referred to the functional descriptions of the corresponding functional modules, and details are not described herein again.
- FIG. 24 shows a possible structural diagram of the server involved in the above embodiment.
- the server 24 includes a storage module 2402 and a communication module 2403.
- the storage module 2402 is configured to store program code and data of the server, for example, the program is used to execute the process 17A1 in FIG. 17A, and the communication module 2403 is used to execute the process 17A2 in FIG. 17A.
- the server involved in the embodiment of the present application may be the terminal shown in FIG. 25.
- the server 25 includes a transceiver 2511, a memory 2512, and a bus 2513.
- the transceiver 2511 and the memory 2512 are connected to each other through a bus 2513.
- the bus 2513 may be a PCI bus or an EISA bus.
- the bus can be divided into an address bus, a data bus, a control bus, and the like. For ease of representation, only one thick line is shown in Figure 25, but it does not mean that there is only one bus or one type of bus.
- the steps of a method or algorithm described in connection with the present disclosure may be implemented in a hardware or may be implemented by a processor executing software instructions.
- the software instructions may be composed of corresponding software modules, which may be stored in a random access memory (RAM), a flash memory, a read only memory (ROM), an erasable programmable read only memory ( Erasable Programmable ROM (EPROM), electrically erasable programmable read only memory (EEPROM), registers, hard disk, removable hard disk, compact disk read only (CD-ROM) or any other form of storage medium known in the art.
- An exemplary storage medium is coupled to the processor to enable the processor to read information from, and write information to, the storage medium.
- the storage medium can also be an integral part of the processor.
- the processor and the storage medium can be located in an ASIC. Additionally, the ASIC can be located in a core network interface device.
- the processor and the storage medium may also exist as discrete components in the core network interface device.
- the functions described herein can be implemented in hardware, software, firmware, or any combination thereof.
- the functions may be stored in a computer readable medium or transmitted as one or more instructions or code on a computer readable medium.
- Computer readable media includes both computer storage media and communication media including any medium that facilitates transfer of a computer program from one location to another.
- a storage medium may be any available media that can be accessed by a general purpose or special purpose computer.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Social Psychology (AREA)
- Computer Networks & Wireless Communication (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Instructional Devices (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
Description
Tile@value | Description |
information | specifies information of tiles |
Claims (46)
- 一种图像的处理方法,应用于服务器,其特征在于,包括:对待处理图像的经纬图或球面图进行横向划分和纵向划分,以得到所述经纬图或所述球面图的各个子区域,其中,所述横向划分的划分位置为预先设定的纬度,所述纵向划分的划分位置由纬度确定,相邻的所述横向划分的划分位置所构成的区域中至少存在两种纵向划分间隔,所述纵向划分间隔为相邻的所述纵向划分的划分位置间的距离;对所述得到的各个子区域的图像进行编码。
- 根据权利要求1所述的方法,其特征在于,所述纵向划分的划分位置由纬度确定包括:所述纵向划分的划分位置所处的纬度越高,所述纵向划分间隔越大。
- 根据权利要求1或2所述的方法,其特征在于,在所述对所述得到的各个子区域的图像进行编码之前,所述方法还包括:对所述子区域的图像按照第一采样间隔在横向进行采样;其中,所述子区域所对应的纬度越高,所述第一采样间隔越大;所述对所述得到的各个子区域的图像进行编码,包括:对所述采样后的各个子区域的图像进行编码。
- 根据权利要求3所述的方法,其特征在于,在对所述得到的各个子区域的图像进行编码之前,所述方法还包括:对所述子区域的图像按照第二采样间隔在纵向进行采样。
- 根据权利要求3或4所述的方法,其特征在于,当所述子区域由对所述待处理图像的球面图进行横向划分和纵向划分得到时,在所述对所述子区域的图像按照第一采样间隔在横向进行采样之前,所述方法还包括:将所述子区域的图像按照预设尺寸映射为二维平面图像;所述对所述子区域的图像按照第一采样间隔在横向进行采样,包括:对所述子区域的图像映射的二维平面图像按照所述第一采样间隔在横向进行采样。
- 根据权利要求3至5任一项所述的方法,其特征在于,在所述对所述采样后的各个子区域的图像进行编码之前,所述方法还包括:调整所述采样后的各个子区域的位置,使得所述调整后的各个子区域的图像拼接成的图像的横向边缘对齐,且纵向边缘对齐。
- 根据权利要求6所述的方法,其特征在于,所述对所述采样后的各个子区域的图像进行编码包括:对所述拼接成的图像分片(Tile)进行编码。
- 根据权利要求1-7任一项所述的方法,其特征在于,在所述对所述得到的各个子区域的图像进行编码之后,所述方法还包括:对通过所述编码获得的各个子区域的图像对应的码流进行独立封装,并且编码所述各个子区域的位置信息;其中,所述编码后的所有所述子区域的位置信息与所有所述子区域的码流存在于一个轨迹中;或者,所述编码后的每个所述子区域的位置信息与码流存在于各自的轨迹中;或者,所述编码后的所有所述子区域的位置信息存在于媒体呈现描述(MPD);或者,所述编码后的所有所述子区域的位置信息存在于私有 文件中,且所述私有文件的地址存在于MPD中;或者,所述编码后的每个所述子区域的位置信息存在于所述每个子区域的码流的辅助增强信息(SEI)中。
- 根据权利要求8所述的方法,其特征在于,当所述子区域由对所述待处理图像的经纬图进行横向划分和纵向划分得到时,所述采样后的各个子区域形成采样后的经纬图,所述位置信息包括所述子区域在所述经纬图中的位置以及尺寸大小,以及所述子区域在所述采样后的经纬图中的位置以及尺寸大小;或者,所述位置信息包括所述子区域在所述经纬图中的位置以及尺寸大小,以及所述子区域在所述拼接成的图像中的位置以及尺寸大小;或者,当所述子区域由对所述待处理图像的球面图进行横向划分和纵向划分得到时,所述采样后的各个子区域形成采样后的球面图,所述位置信息包括所述子区域在所述球面图的图像中的位置以及经纬度范围,以及所述子区域在所述采样后的球面图的图像中的位置以及尺寸大小;或者,所述位置信息包括所述子区域在所述球面图图像中的位置以及经纬度范围,以及所述子区域在所述拼接成的图像中的位置以及尺寸大小。
- 根据权利要求8或9所述的方法,其特征在于,所述私有文件还包括用于表征用户视点与所述用户视点的视角覆盖的子区域的编号的对应关系的信息。
- 根据权利要求8至10任一项所述的方法,其特征在于,所述私有文件还包括用于表征所述用户视角覆盖的子区域中需优先显示的子区域个数的信息、所述需优先显示的子区域编号的信息、次优先显示的子区域编号的信息以及不显示的子区域编号的信息。
- 根据权利要求1至11任一项所述的方法,其特征在于,所述经纬图包括左眼对应的经纬图和右眼对应的经纬图;在所述对待处理图像的经纬图或球面图进行横向划分和纵向划分之前,所述方法还包括:将所述左眼对应的经纬图与所述右眼对应的经纬图进行分割;所述对待处理图像的经纬图或球面图进行横向划分和纵向划分,包括:对所述左眼对应的经纬图进行所述横向划分和所述纵向划分,以及对所述右眼对应的经纬图进行所述横向划分和所述纵向划分。
- 根据权利要求9至12任一项所述的方法,其特征在于,所述方法还包括:将所述通过所述编码获得的各个子区域的图像对应的码流发送给终端;或者,接收终端发送的视角信息,根据所述视角信息获取所述视角信息对应的子区域,将所述视角信息对应的子区域的码流发送给所述终端;或者,接收终端发送的子区域的编号,将所述子区域的编号对应的码流发送给所述终端。
- 根据权利要求1-13任一项所述的方法,其特征在于,所述经纬图为360度全景视频图像的经纬图,或所述360度全景视频图像的经纬图的一部分;或所述球面图为360度全景视频图像的球面图,或所述360度全景视频图像的球面图的一部分。
- 一种图像的处理方法,应用于终端,其特征在于,包括:确定全景图像各个子区域的位置信息;根据所述确定的各个子区域的位置信息,确定当前视角覆盖的子区域在所述全景图像中的位置信息;确定子区域的第一采样间隔;根据所述确定的当前视角覆盖的子区域位置信息,获取所述当前视角覆盖的子区域对应的码流;对所述码流进行解码,以得到所述当前视角覆盖的子区域的图像;根据所述确定的当前视角覆盖的子区域的位置信息以及所述第一采样间隔对所述解码后的图像进行重采样,并对所述重采样后的图像进行播放。
- 根据权利要求15所述的方法,其特征在于,所述确定全景图像各个子区域的位置信息,包括:接收服务器发送的第一信息,所述第一信息包括所述全景图像的各个子区域的轨迹以及所述各个子区域的码流,所述轨迹包括所述全景图像的所有子区域的位置信息;根据所述轨迹,得到所述全景图像中的各个子区域的位置信息。
- 根据权利要求15所述的方法,其特征在于,所述确定全景图像中各个子区域的位置信息,包括:接收服务器发送的媒体呈现描述(MPD),其中,所述MPD包括所述各个子区域的位置信息,或者,所述MPD中包括私有文件的地址,且所述私有文件包括所述各个子区域的位置信息;解析所述MPD,以获取所述各个子区域的位置信息。
- 根据权利要求15所述的方法,其特征在于,所述子区域的位置信息存在于所述子区域对应的码流的辅助增强信息(SEI)中。
- 根据权利要求15-18任一项所述的方法,其特征在于,所述获取所述当前视角覆盖的子区域对应的码流,包括:从所述终端的存储器中获取所述当前视角覆盖的子区域对应的码流;或者,向服务器请求获取所述当前视角覆盖的子区域对应的码流。
- 根据权利要求19所述的方法,其特征在于,所述向服务器请求获取所述当前视角覆盖的子区域对应的码流,包括:将指示所述当前视角的信息发送给所述服务器,接收所述服务器发送的所述当前视角覆盖的子区域对应的码流;或者,按照所述终端与所述服务器预设的协议,从所述服务器获取所述当前视角覆盖的子区域对应的码流,所述协议包括视角与该视角覆盖的子区域的对应关系。
- 根据权利要求16至20任一项所述的方法,其特征在于,所述确定子区域的第一采样间隔,包括:确定预设的采样间隔为所述第一采样间隔;或者,从所述服务器接收所述第一采样间隔;或者,根据从所述服务器接收到的所述各个子区域的位置信息获取所述第一采样间隔。
- 一种图像的处理方法,应用于服务器,其特征在于,包括:保存全景图像的经纬图或球面图的各个子区域的图像对应的码流,所述子区域根据对所述全景图像的经纬图或球面图进行横向划分和纵向划分得到,其中,所述横向划分的划分位置为预先设定的纬度,所述纵向划分的划分位置由纬度确定,相邻的所述横向划分的划分位置所构成的区域中至少存在两种纵向划分间隔,所述纵向划分间隔为相邻的所述纵向划分的划分位置间的距离;向终端发送所述终端请求的所述保存的各个子区域的图像对应的码流中当前视角覆盖的子区域的码流。
- 根据权利要求22所述的方法,其特征在于,所述保存于所述服务器的子区域对应的图像在被编码之前,被按照第一采样间隔在横向进行采样;其中,所述子区域所对应的纬度越高,所述第一采样间隔越大;或者,被按照第二采样间隔在纵向进行采样。
- 一种服务器,其特征在于,包括:划分单元,用于对待处理图像的经纬图或球面图进行横向划分和纵向划分,以得到所述经纬图或所述球面图的各个子区域,其中,所述横向划分的划分位置为预先设定的纬度,所述纵向划分的划分位置由纬度确定,相邻的所述横向划分的划分位置所构成的区域中至少存在两种纵向划分间隔,所述纵向划分间隔为相邻的所述纵向划分的划分位置间的距离;编码单元,用于对所述得到的各个子区域的图像进行编码。
- 根据权利要求24所述的服务器,其特征在于,所述纵向划分的划分位置由纬度确定包括:所述纵向划分的划分位置所处的纬度越高,所述纵向划分间隔越大。
- 根据权利要求24或25所述的服务器,其特征在于,还包括采样单元,用于:对所述子区域的图像按照第一采样间隔在横向进行采样;其中,所述子区域所所对应的纬度越高,所述第一采样间隔越大;所述编码单元用于:对所述采样后的各个子区域的图像进行编码。
- 根据权利要求26所述的服务器,其特征在于,所述采样单元还用于:对所述子区域的图像按照第二采样间隔在纵向进行采样。
- 根据权利要求26或27所述的服务器,其特征在于,所述采样单元还用于:将所述子区域的图像按照预设尺寸映射为二维平面图像;对所述子区域的图像映射的二维平面图像按照所述第一采样间隔在横向进行采样。
- 根据权利要求26至28任一项所述的服务器,其特征在于,还包括拼接单元,用于:调整所述采样后的各个子区域的位置,使得所述调整后的各个子区域的图像拼接成的图像的横向边缘对齐,且纵向边缘对齐。
- 根据权利要求29所述的服务器,其特征在于,所述编码单元用于:对所述拼接成的图像分片(Tile)进行编码。
- 根据权利要求24-30任一项所述的服务器,其特征在于,还包括封装单元,用于:对通过所述编码获得的各个子区域的图像对应的码流进行独立封装,并且编码所述各个子区域的位置信息;其中,所述编码后的所有所述子区域的位置信息与所有所述子区域的码流存在于一个轨迹中;或者,所述编码后的每个所述子区域的位置信息与码流存在于各自的轨迹中;或者,所述编码后的所有所述子区域的位置信息存在于媒体呈现描述(MPD);或者,所述编码后的所有所述子区域的位置信息存在于私有文件中,且所述私有文件的地址存在于MPD中;或者,所述编码后的每个所述子区域的位置信息存在于所述每个子区域的码流的辅助增强信息(SEI)中。
- 根据权利要求31所述的服务器,其特征在于,当所述子区域由对所述待处理图像的经纬图进行横向划分和纵向划分得到时,所述采样后的各个子区域形成采样后的经纬图,所述位置信息包括所述子区域在所述经纬图中的位置以及尺寸大小,以及所述子区域在所述采样后的经纬图中的位置以及尺寸大小;或者,所述位置信息包括所述子区域在所述经纬图中的位置以及尺寸大小,以及所述子区域在所述拼接成的图像中的位置以及尺寸大小;或者,当所述子区域由对所述待处理图像的球面图进行横向划分和纵向划分得到时,所述采样后的各个子区域形成采样后的球面图,所述位置信息包括所述子区域在所述球面图的图像中的位置以及经纬度范围,以及所述子区域在所述采样后的球面图的图像中的位置以及尺寸大小;或者,所述位置信息包括所述子区域在所述球面图图像中的位置以及经纬度范围,以及所述子区域在所述拼接成的图像中的位置以及尺寸大小。
- 根据权利要求31或32所述的服务器,其特征在于,所述私有文件还包括用于表征用户视点与所述用户视点的视角覆盖的子区域的编号的对应关系的信息。
- 根据权利要求32至33任一项所述的服务器,其特征在于,所述私有文件还包括用于表征所述用户视角覆盖的子区域中需优先显示的子区域个数的信息、所述需优先显示的子区域编号的信息、次优先显示的子区域编号的信息以及不显示的子区域编号的信息。
- 根据权利要求24至34任一项所述的服务器,其特征在于,所述经纬图包括左眼对应的经纬图和右眼对应的经纬图;所述划分单元用于:将所述左眼对应的经纬图与所述右眼对应的经纬图进行分割;对所述左眼对应的经纬图进行所述横向划分和所述纵向划分,以及对所述右眼对应的经纬图进行所述横向划分和所述纵向划分。
- 根据权利要求32至35任一项所述的服务器,其特征在于,还包括传输单元,用于:将所述通过所述编码获得的各个子区域的图像对应的码流发送给终端;或者,接收终端发送的视角信息,根据所述视角信息获取所述视角信息对应的子区域,将所述视角信息对应的子区域的码流发送给所述终端;或者,接收终端发送的子区域的编号,将所述子区域的编号对应的码流发送给所述终端。
- 根据权利要求24-36任一项所述的服务器,其特征在于,所述经纬图为360度全景视频图像的经纬图,或所述360度全景视频图像的经纬 图的一部分;或所述球面图为360度全景视频图像的球面图,或所述360度全景视频图像的球面图的一部分。
- 一种终端,其特征在于,包括:获取单元,用于确定全景图像各个子区域的位置信息;所述获取单元还用于,根据所述确定的各个子区域的位置信息,确定当前视角覆盖的子区域在所述全景图像中的位置信息,并确定子区域的第一采样间隔;所述获取单元,还用于根据所述确定的当前视角覆盖的子区域位置信息,获取所述当前视角覆盖的子区域对应的码流;解码单元,用于对所述码流进行解码,以得到所述当前视角覆盖的子区域的图像;重采样单元,用于根据所述确定的当前视角覆盖的子区域的位置信息以及所述第一采样间隔对所述解码后的图像进行重采样;播放单元,用于所述重采样后的图像进行播放。
- 根据权利要求38所述的终端,其特征在于,所述获取单元用于:接收服务器发送的第一信息,所述第一信息包括所述全景图像的各个子区域的轨迹以及所述各个子区域的码流,所述轨迹包括所述全景图像的所有子区域的位置信息;根据所述轨迹,得到所述全景图像中的各个子区域的位置信息。
- 根据权利要求38所述的终端,其特征在于,所述获取单元用于:接收服务器发送的媒体呈现描述(MPD),其中,所述MPD包括所述各个子区域的位置信息,或者,所述MPD中包括私有文件的地址,且所述私有文件包括所述各个子区域的位置信息;所述获取单元还用于:解析所述MPD,以获取所述各个子区域的位置信息。
- 根据权利要求38所述的终端,其特征在于,所述子区域的位置信息存在于所述子区域对应的码流的辅助增强信息(SEI)中。
- 根据权利要求38-41任一项所述的终端,其特征在于,所述获取单元用于:从所述终端的存储器中获取所述当前视角覆盖的子区域对应的码流;或者,向服务器请求获取所述当前视角覆盖的子区域对应的码流。
- 根据权利要求42所述的终端,其特征在于,所述获取单元用于:将指示所述当前视角的信息发送给所述服务器,接收所述服务器发送的所述当前视角覆盖的子区域对应的码流;或者,按照所述终端与所述服务器预设的协议,从所述服务器获取所述当前视角覆盖的子区域对应的码流,所述协议包括视角与该视角覆盖的子区域的对应关系。
- 根据权利要求39至43任一项所述的终端,其特征在于,所述获取单元用于:确定预设的采样间隔为所述第一采样间隔;或者,从所述服务器接收所述第一采样间隔;或者,根据从所述服务器接收到的所述各个子区域的位置信息获取所述第一采样间隔。
- 一种服务器,其特征在于,包括:存储单元,用于保存全景图像的经纬图或球面图的各个子区域的图像对应的码流, 所述子区域根据对所述全景图像的经纬图或球面图进行横向划分和纵向划分得到,其中,所述横向划分的划分位置为预先设定的纬度,所述纵向划分的划分位置由纬度确定,相邻的所述横向划分的划分位置所构成的区域中至少存在两种纵向划分间隔,所述纵向划分间隔为相邻的所述纵向划分的划分位置间的距离;传输单元,用于向终端发送所述终端请求的所述保存的各个子区域的图像对应的码流中当前视角覆盖的子区域的码流。
- 根据权利要求45所述的服务器,其特征在于,所述保存于所述服务器的子区域对应的图像在被编码之前,被按照第一采样间隔在横向进行采样;其中,所述子区域所对应的纬度越高,所述第一采样间隔越大;或者,被按照第二采样间隔在纵向进行采样。
Priority Applications (10)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
BR112020002235-7A BR112020002235A2 (pt) | 2017-07-31 | 2018-03-29 | método de processamento de imagens, terminal, e servidor |
CA3069034A CA3069034C (en) | 2017-07-31 | 2018-03-29 | Image processing method, terminal, and server |
RU2020108306A RU2764462C2 (ru) | 2017-07-31 | 2018-03-29 | Сервер, оконечное устройство и способ обработки изображений |
EP18841334.8A EP3633993A4 (en) | 2017-07-31 | 2018-03-29 | IMAGE PROCESSING METHOD, TERMINAL, AND SERVER |
SG11201913824XA SG11201913824XA (en) | 2017-07-31 | 2018-03-29 | Image processing method, terminal, and server |
AU2018311589A AU2018311589B2 (en) | 2017-07-31 | 2018-03-29 | Image processing method, terminal, and server |
JP2019571623A JP6984841B2 (ja) | 2017-07-31 | 2018-03-29 | イメージ処理方法、端末およびサーバ |
KR1020207001630A KR102357137B1 (ko) | 2017-07-31 | 2018-03-29 | 이미지 처리 방법, 단말기, 및 서버 |
PH12020500047A PH12020500047A1 (en) | 2017-07-31 | 2020-01-06 | Image processing method, terminal and server |
US16/739,568 US11032571B2 (en) | 2017-07-31 | 2020-01-10 | Image processing method, terminal, and server |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710645108.XA CN109327699B (zh) | 2017-07-31 | 2017-07-31 | 一种图像的处理方法、终端和服务器 |
CN201710645108.X | 2017-07-31 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/739,568 Continuation US11032571B2 (en) | 2017-07-31 | 2020-01-10 | Image processing method, terminal, and server |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2019024521A1 true WO2019024521A1 (zh) | 2019-02-07 |
Family
ID=65232513
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2018/081177 WO2019024521A1 (zh) | 2017-07-31 | 2018-03-29 | 一种图像的处理方法、终端和服务器 |
Country Status (12)
Country | Link |
---|---|
US (1) | US11032571B2 (zh) |
EP (1) | EP3633993A4 (zh) |
JP (1) | JP6984841B2 (zh) |
KR (1) | KR102357137B1 (zh) |
CN (1) | CN109327699B (zh) |
AU (1) | AU2018311589B2 (zh) |
BR (1) | BR112020002235A2 (zh) |
CA (1) | CA3069034C (zh) |
PH (1) | PH12020500047A1 (zh) |
RU (1) | RU2764462C2 (zh) |
SG (1) | SG11201913824XA (zh) |
WO (1) | WO2019024521A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020198164A1 (en) * | 2019-03-26 | 2020-10-01 | Pcms Holdings, Inc. | System and method for multiplexed rendering of light fields |
WO2021016176A1 (en) * | 2019-07-23 | 2021-01-28 | Pcms Holdings, Inc. | System and method for adaptive lenslet light field transmission and rendering |
CN113766272A (zh) * | 2020-06-04 | 2021-12-07 | 腾讯科技(深圳)有限公司 | 一种沉浸媒体的数据处理方法 |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102598082B1 (ko) * | 2016-10-28 | 2023-11-03 | 삼성전자주식회사 | 영상 표시 장치, 모바일 장치 및 그 동작방법 |
US11546402B2 (en) * | 2019-01-04 | 2023-01-03 | Tencent America LLC | Flexible interoperability and capability signaling using initialization hierarchy |
CN111813875B (zh) * | 2019-04-11 | 2024-04-05 | 浙江宇视科技有限公司 | 地图点位信息处理方法、装置及服务器 |
US20220239947A1 (en) * | 2019-05-23 | 2022-07-28 | Vid Scale, Inc. | Video-based point cloud streams |
CN111212267A (zh) * | 2020-01-16 | 2020-05-29 | 聚好看科技股份有限公司 | 一种全景图像的分块方法及服务器 |
CN111314739B (zh) * | 2020-02-17 | 2022-05-17 | 聚好看科技股份有限公司 | 一种图像处理方法、服务器及显示设备 |
CN114760522A (zh) * | 2020-12-29 | 2022-07-15 | 阿里巴巴集团控股有限公司 | 数据处理方法、装置和设备 |
CN113347403B (zh) * | 2021-04-19 | 2023-10-27 | 浙江大学 | 一种图像处理方法及装置 |
CN113553452A (zh) * | 2021-06-16 | 2021-10-26 | 浙江科技学院 | 一种基于虚拟现实的空间性域名处理方法及装置 |
CN113630622B (zh) * | 2021-06-18 | 2024-04-26 | 中图云创智能科技(北京)有限公司 | 全景视频图像处理方法、服务端、目标设备、装置和系统 |
CN114268835B (zh) * | 2021-11-23 | 2022-11-01 | 北京航空航天大学 | 一种低传输流量的vr全景视频时空切片方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150264259A1 (en) * | 2014-03-17 | 2015-09-17 | Sony Computer Entertainment Europe Limited | Image processing |
CN106063277A (zh) * | 2014-03-03 | 2016-10-26 | 奈克斯特Vr股份有限公司 | 用于对内容进行流传输的方法和装置 |
CN106375760A (zh) * | 2016-10-11 | 2017-02-01 | 上海国茂数字技术有限公司 | 一种全景视频多边形采样方法及装置 |
CN106899840A (zh) * | 2017-03-01 | 2017-06-27 | 北京大学深圳研究生院 | 全景图像映射方法 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6331869B1 (en) * | 1998-08-07 | 2001-12-18 | Be Here Corporation | Method and apparatus for electronically distributing motion panoramic images |
RU2504917C2 (ru) * | 2008-10-07 | 2014-01-20 | Телефонактиеболагет Лм Эрикссон (Пабл) | Файл медиаконтейнера |
US9948939B2 (en) * | 2012-12-07 | 2018-04-17 | Qualcomm Incorporated | Advanced residual prediction in scalable and multi-view video coding |
US10244253B2 (en) * | 2013-09-13 | 2019-03-26 | Qualcomm Incorporated | Video coding techniques using asymmetric motion partitioning |
EP3092806A4 (en) * | 2014-01-07 | 2017-08-23 | Nokia Technologies Oy | Method and apparatus for video coding and decoding |
US9628822B2 (en) * | 2014-01-30 | 2017-04-18 | Qualcomm Incorporated | Low complexity sample adaptive offset encoding |
GB2525170A (en) * | 2014-04-07 | 2015-10-21 | Nokia Technologies Oy | Stereo viewing |
JP6642427B2 (ja) | 2014-06-30 | 2020-02-05 | ソニー株式会社 | 情報処理装置および方法 |
US10462480B2 (en) * | 2014-12-31 | 2019-10-29 | Microsoft Technology Licensing, Llc | Computationally efficient motion estimation |
US10666979B2 (en) | 2015-03-05 | 2020-05-26 | Sony Corporation | Image processing device and image processing method for encoding/decoding omnidirectional image divided vertically |
WO2017116952A1 (en) * | 2015-12-29 | 2017-07-06 | Dolby Laboratories Licensing Corporation | Viewport independent image coding and rendering |
CN105872546B (zh) * | 2016-06-13 | 2019-05-28 | 上海杰图软件技术有限公司 | 一种实现全景图像压缩存储的方法和系统 |
CN106530216B (zh) * | 2016-11-05 | 2019-10-29 | 深圳岚锋创视网络科技有限公司 | 全景影像文件处理方法及系统 |
US10574886B2 (en) * | 2017-11-02 | 2020-02-25 | Thermal Imaging Radar, LLC | Generating panoramic video for video management systems |
-
2017
- 2017-07-31 CN CN201710645108.XA patent/CN109327699B/zh active Active
-
2018
- 2018-03-29 KR KR1020207001630A patent/KR102357137B1/ko active IP Right Grant
- 2018-03-29 SG SG11201913824XA patent/SG11201913824XA/en unknown
- 2018-03-29 AU AU2018311589A patent/AU2018311589B2/en active Active
- 2018-03-29 RU RU2020108306A patent/RU2764462C2/ru active
- 2018-03-29 WO PCT/CN2018/081177 patent/WO2019024521A1/zh unknown
- 2018-03-29 EP EP18841334.8A patent/EP3633993A4/en active Pending
- 2018-03-29 CA CA3069034A patent/CA3069034C/en active Active
- 2018-03-29 BR BR112020002235-7A patent/BR112020002235A2/pt unknown
- 2018-03-29 JP JP2019571623A patent/JP6984841B2/ja active Active
-
2020
- 2020-01-06 PH PH12020500047A patent/PH12020500047A1/en unknown
- 2020-01-10 US US16/739,568 patent/US11032571B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106063277A (zh) * | 2014-03-03 | 2016-10-26 | 奈克斯特Vr股份有限公司 | 用于对内容进行流传输的方法和装置 |
US20150264259A1 (en) * | 2014-03-17 | 2015-09-17 | Sony Computer Entertainment Europe Limited | Image processing |
CN106375760A (zh) * | 2016-10-11 | 2017-02-01 | 上海国茂数字技术有限公司 | 一种全景视频多边形采样方法及装置 |
CN106899840A (zh) * | 2017-03-01 | 2017-06-27 | 北京大学深圳研究生院 | 全景图像映射方法 |
Non-Patent Citations (1)
Title |
---|
See also references of EP3633993A4 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020198164A1 (en) * | 2019-03-26 | 2020-10-01 | Pcms Holdings, Inc. | System and method for multiplexed rendering of light fields |
US11991402B2 (en) | 2019-03-26 | 2024-05-21 | Interdigital Vc Holdings, Inc. | System and method for multiplexed rendering of light fields |
WO2021016176A1 (en) * | 2019-07-23 | 2021-01-28 | Pcms Holdings, Inc. | System and method for adaptive lenslet light field transmission and rendering |
CN113766272A (zh) * | 2020-06-04 | 2021-12-07 | 腾讯科技(深圳)有限公司 | 一种沉浸媒体的数据处理方法 |
CN113766272B (zh) * | 2020-06-04 | 2023-02-10 | 腾讯科技(深圳)有限公司 | 一种沉浸媒体的数据处理方法 |
Also Published As
Publication number | Publication date |
---|---|
KR20200019718A (ko) | 2020-02-24 |
CA3069034A1 (en) | 2019-02-07 |
RU2020108306A3 (zh) | 2021-08-26 |
RU2764462C2 (ru) | 2022-01-17 |
CN109327699A (zh) | 2019-02-12 |
CN109327699B (zh) | 2021-07-16 |
AU2018311589A1 (en) | 2020-02-20 |
US20200154138A1 (en) | 2020-05-14 |
KR102357137B1 (ko) | 2022-02-08 |
BR112020002235A2 (pt) | 2020-07-28 |
EP3633993A1 (en) | 2020-04-08 |
CA3069034C (en) | 2024-05-28 |
SG11201913824XA (en) | 2020-01-30 |
JP2020529149A (ja) | 2020-10-01 |
US11032571B2 (en) | 2021-06-08 |
RU2020108306A (ru) | 2021-08-26 |
JP6984841B2 (ja) | 2021-12-22 |
AU2018311589B2 (en) | 2022-12-22 |
EP3633993A4 (en) | 2020-06-24 |
PH12020500047A1 (en) | 2020-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2019024521A1 (zh) | 一种图像的处理方法、终端和服务器 | |
KR102307819B1 (ko) | 레거시 및 몰입형 렌더링 디바이스를 위한 몰입형 비디오를 포맷팅하는 방법, 장치 및 스트림 | |
KR102559862B1 (ko) | 미디어 콘텐츠 전송을 위한 방법, 디바이스, 및 컴퓨터 프로그램 | |
US20200112710A1 (en) | Method and device for transmitting and receiving 360-degree video on basis of quality | |
CN112189345B (zh) | 用于编码或解码表示3d场景的数据的方法、设备或介质 | |
CN109362242A (zh) | 一种视频数据的处理方法及装置 | |
CN110741649B (zh) | 用于轨道合成的方法及装置 | |
CN113852829A (zh) | 点云媒体文件的封装与解封装方法、装置及存储介质 | |
WO2023061131A1 (zh) | 媒体文件封装方法、装置、设备及存储介质 | |
CN110637463B (zh) | 360度视频处理方法 | |
JP2022541908A (ja) | ボリュメトリックビデオコンテンツを配信するための方法および装置 | |
CN115022715A (zh) | 一种沉浸媒体的数据处理方法及设备 | |
CN115567756A (zh) | 基于视角的vr视频系统和处理方法 | |
WO2023024841A1 (zh) | 点云媒体文件的封装与解封装方法、装置及存储介质 | |
WO2023016293A1 (zh) | 自由视角视频的文件封装方法、装置、设备及存储介质 | |
WO2023024839A1 (zh) | 媒体文件封装与解封装方法、装置、设备及存储介质 | |
CN113497928B (zh) | 一种沉浸媒体的数据处理方法及相关设备 | |
WO2023024843A1 (zh) | 媒体文件封装与解封装方法、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 18841334 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2019571623 Country of ref document: JP Kind code of ref document: A |
|
ENP | Entry into the national phase |
Ref document number: 3069034 Country of ref document: CA |
|
ENP | Entry into the national phase |
Ref document number: 2018841334 Country of ref document: EP Effective date: 20191230 Ref document number: 20207001630 Country of ref document: KR Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
REG | Reference to national code |
Ref country code: BR Ref legal event code: B01A Ref document number: 112020002235 Country of ref document: BR |
|
ENP | Entry into the national phase |
Ref document number: 2018311589 Country of ref document: AU Date of ref document: 20180329 Kind code of ref document: A |
|
ENP | Entry into the national phase |
Ref document number: 112020002235 Country of ref document: BR Kind code of ref document: A2 Effective date: 20200131 |