Patent Description:
Virtual reality (VR) may indicate an interface between a user and a device, which involves rendering, by a computer, a specific environment or situation and enabling the user to interact as if in a real environment or situation. A device which is capable of providing virtual reality to a user, provides a user interface that shows the user a situation or environment which the user has not experienced directly, and allows the user to manipulate the situation or environment.

With recent increased interest in virtual reality, techniques for implementing VR have been actively developed. In particular, research into techniques for processing images including a virtual space needed to implement VR has been actively carried out.

Further background information can be found in: <CIT> which generally relates to methods of capturing, streaming or playback of content that can be used to simulate a 3D environment; and <CIT> which generally relates to rendering a panoramic image.

The present disclosure provides a method, apparatus, and recording medium for processing an image, to prevent the quality of a virtual reality (VR) image from being degraded due to distortion, such as warping, which may occur when the VR image of a specific space is rendered.

A method of processing an image by a device obtaining one or more images including captured images of objects in a target space, generating metadata including information about mapping between the one or more images and a three-dimensional (3D) mesh model used to generate a virtual reality (VR) image of the target space, and transmitting the one or more images and the metadata to a terminal.

The above and/or other aspects will become apparent and more readily appreciated from the following description of exemplary embodiments, taken in conjunction with the accompanying drawings in which:.

According to an aspect of the present techniques, there is provided a method, performed by a device, of processing an image, as set out in appended independent claim <NUM>.

According to another aspect of the present techniques, there is provided a method, performed by a terminal, of processing an image, as set out in appended independent claim <NUM>.

According to yet another aspect of the present techniques, there is provided a device for processing an image, as set out in appended independent claim <NUM>.

According to a further aspect of an exemplary embodiment, there is provided a terminal for processing an image, as set out in appended independent claim <NUM>.

Preferred features are set out in the appended dependent claims.

Reference will now be made in detail to exemplary embodiments, examples of which are illustrated in the accompanying drawings, wherein like reference numerals refer to like elements throughout. In this regard, the present exemplary embodiments may have different forms and should not be construed as being limited to the descriptions set forth herein. Accordingly, the exemplary embodiments are merely described below, by referring to the figures, to explain aspects. As used herein, the term "and/or" includes any and all combinations of at least one of the associated listed items.

Terms used herein will be described in brief, and the present disclosure will be described in detail.

Although terms used in the present disclosure are selected according to general terms popularly used at present under the consideration of functions in the present disclosure, the terms may vary according to the intention of those of ordinary skill in the art, judicial precedents, or introduction of new technology. In addition, in a specific case, the applicant voluntarily may select terms, and in this case, the meaning of the terms is disclosed in a corresponding description part of the disclosure. Thus, the terms used in the present disclosure should be defined not by the simple names of the terms but by the meaning of the terms and the contents throughout the present disclosure.

Throughout the entirety of the specification of the present disclosure, if it is assumed that a certain part includes a certain component, the term 'including' means that a corresponding component may further include other components unless a specific meaning opposed to the corresponding component is written. Terms used in the exemplary embodiments, such as "unit" or "module", indicate a unit for processing at least one function or operation, and may be implemented in hardware, software, or in a combination of hardware and software.

Hereinafter, exemplary embodiments of the present disclosure will be described in detail with reference to the attached drawings to allow those of ordinary skill in the art to easily carry out the exemplary embodiments. However, the present disclosure may be implemented in various forms, and are not limited to the exemplary embodiments described herein. To clearly describe the present disclosure, parts that are not associated with the description have been omitted from the drawings, and throughout the specification, identical reference numerals refer to identical parts.

<FIG>, <FIG>, <FIG>, <FIG>, <FIG> and <FIG> in particular relate to the present techniques; the remaining Figures provide useful contextual information to help understand the present techniques.

<FIG> is a conceptual view for describing a method of processing one or more images <NUM>, by a device <NUM> and a terminal <NUM>.

The device <NUM> obtains the one or more images <NUM> of objects included in a target space. Herein, the target space is a place of a specific environment or a place where a specific situation occurs, and may be a space to be implemented with a virtual reality (VR) image. The one or more images may be real images or graphic images. However, this is merely an example, and the one or more images may be a combination of a real image and a graphic image.

Objects included in the target space may include at least one of a region included in the target space and an object and a person located in the target space. For example, if the target space is an exhibition, a wall in the exhibition and at least one exhibit may be included in objects included in the exhibition. As another example, if the target space is a stadium, images of facilities and persons located in the stadium may be included in objects included in the stadium.

The device <NUM> generates metadata <NUM> used to generate a VR image of the target space based on the obtained one or more images <NUM>.

For example, the metadata <NUM> may include information about mapping between a three-dimensional (3D) mesh model used to generate the VR image of the target space and the one or more images <NUM>. The information about the mapping may include, but is not limited to, information about at least one of angles at which the one or more images <NUM> are captured, positions of capturing devices that capture the one or more images <NUM>, and a type and a resolution of the 3D mesh model.

In another example, the metadata <NUM> may further include at least one of quality correction information for the one or more images <NUM>, and weight information for a region on which an object overlapping between the one or more images is expressed. Herein, the quality correction information may include a lens shading correction parameter, a white balancing parameter, and so forth. The weight information may indicate a weight value for blending pixel values of pixels included in the overlapping object between the one or more images. For example, an object may be described as overlapping between two images when at least a portion of the object is captured in each of the two images.

The device <NUM> transmits the one or more images <NUM> and the metadata <NUM> to the terminal <NUM>. For example, as the device <NUM> receives a user input requesting the VR image of the target space from the terminal <NUM>, the device <NUM> may transmit the one or more images <NUM> and the metadata <NUM> to the terminal <NUM>.

The device <NUM> transmits the metadata, which is information required for performing rendering, to the terminal <NUM> together with the at least one image <NUM>, without directly generating the VR image based on the one or more images <NUM>, thereby preventing quality degradation from occurring due to warping or the like.

The terminal <NUM> receives the one or more images <NUM>, which are or may include captured images of objects included in the target space, and the metadata <NUM> from the device <NUM>.

The device <NUM> generates a VR image <NUM> of the target space based on the received one or more images <NUM> and the received metadata <NUM>. For example, the terminal <NUM> may obtain mapping information about mapping between a 3D mesh model used to generate the VR image <NUM> of the target space and the one or more images <NUM> from the metadata <NUM>. The terminal <NUM> generates the VR image <NUM> by rendering the one or more images <NUM> based on the obtained mapping information.

The terminal <NUM> outputs the generated VR image <NUM>. Alternatively, the terminal <NUM> transmits the generated VR image <NUM> to another external terminal.

The terminal <NUM> may be implemented in various forms. For example, the terminal <NUM> described herein may be, but is not limited to, a cellular phone, a smart phone, a laptop computer, a tablet personal computer (PC), an electronic-book (e-book) terminal, a digital broadcasting terminal, a personal digital assistant (PDA), a portable multimedia player (PMP), a navigation system, a smart television (TV), a consumer electronics (CE) device (e.g., a refrigerator or an air conditioner having a display panel, etc.), a head mounted display (HMD), or the like.

<FIG> is a flowchart of a method, performed by the device <NUM>, of processing an image.

In operation S210, the device <NUM> obtains one or more images, which are or may include captured images of objects included in the target space.

For example, the device <NUM> may obtain the one or more images <NUM> from an external capturing device. In another example, the device <NUM> obtains the one or more images <NUM> by capturing the objects included in the target space using a camera included in the device <NUM>.

In operation S220, the device <NUM> generates metadata including information about mapping between a 3D mesh model used to generate the VR image of the target space and the one or more images <NUM>.

The device <NUM> determines a type or resolution of the 3D mesh model used to generate the VR image of the target space. The device <NUM> determines positions of one or more images mapped onto the 3D mesh model based on the 3D mesh model of the determined type or resolution. For example, the device <NUM> determines positions of one or more images mapped onto the 3D mesh model, based on information about angles at which the one or more images are captured, positions of capturing devices that capture the one or more images, and so forth.

In another example, the metadata generated by the device <NUM> may further include quality correction information of the one or more images. For example, the quality correction information may include a lens shading correction parameter, a white balancing parameter, and so forth.

In another example, the metadata generated by the device <NUM> may further include weight information of the one or more images. The weight information may indicate a weight value for blending pixel values of pixels in a region which includes an object overlapping between the one or more images.

In operation S230, the device <NUM> transmits the one or more images and the metadata to the terminal <NUM>.

The device <NUM> encodes and transmits the one or more images and the metadata to the terminal <NUM>.

The device <NUM> performs a process of correcting the quality of the one or more images, encodes the quality-corrected one or more images and metadata, and transmits the encoded one or more images and metadata to the terminal <NUM>.

The device <NUM> combines pixel values of a region of the one or more images which includes the overlapping object according to a preset weight value for conversion. The device <NUM> according to an exemplary embodiment encodes and transmits the converted one or more images and the metadata to the terminal <NUM>.

The device <NUM> encodes an image, which is generated as a result of performing the process of correcting the quality of the one or more images and a process of converting the pixel values of the region of the one or more images including the overlapping object according to a preset weight value, and the metadata, and transmits the encoded image and metadata to the terminal <NUM>.

After performing the process of correcting the quality of the one or more images, the device <NUM> may encode a new image, which is obtained by newly projecting the quality-corrected one or more images using a normalized camera pose, and metadata updated based on a camera pose indicated by existing metadata or metadata in which a mapping data item is updated based on the normalized camera pose, and transmits the encoded image and metadata to the terminal <NUM>. The normalized camera pose may be, for example, that a position of each camera is the same as before, and only angle information is <NUM> degrees for equal division of a space.

After performing a process of combining pixel values of a region of the one or more images including the overlapping object according to a preset weight value for conversion, the device <NUM> may encode a new image, which is obtained by newly projecting the converted one or more images with a normalized camera pose, and metadata updated based on a camera pose of existing metadata or metadata in which a mapping data item is updated based on the normalized camera pose, and transmits the encoded image and metadata to the terminal <NUM>. The normalized camera pose may be, for example, that a position of each camera is the same as before, and only angle information is <NUM> degrees for equal distribution of a space.

After performing the process of correcting the quality of the one or more images and performing the process of combining pixel values of a region of the one or more images including the overlapping object according to a preset weight value for conversion, the device <NUM> may encode a new image, which is obtained by newly projecting the converted one or more images with a normalized camera pose, and metadata updated based on a camera pose of existing metadata or metadata in which a mapping data item is updated based on the normalized camera pose, and transmits the encoded image and metadata to the terminal <NUM>. The normalized camera pose may be, for example, that a position of each camera is the same as before, and only angle information is <NUM> degrees for equal distribution of a space.

<FIG> are views for describing example arrangements and forms of photographing devices for obtaining one or more images of a target space.

A capturing device may exist independently outside the device <NUM> described with reference to <FIG>, or may exist as a part of hardware units of the device <NUM>. Herein, the capturing device may be, for example, a camera. The device <NUM> may obtain a capturing parameter regarding arrangement and capturing angles of capturing devices, together with the one or more images. The device <NUM> determines positions at which the pixel values of the one or more images are mapped onto the 3D mesh model, based on the obtained capturing parameter. Thus, the device <NUM> generates mapping information required for generating the VR image without being limited to arrangements and capturing angles of the capturing devices.

<FIG> shows two capturing devices capture images of objects included in a target space, respectively. For example, a first capturing device <NUM> may capture objects included in a target space from a perspective which spans from <NUM> degrees to <NUM> degrees with respect to a preset reference point, and a second capturing device <NUM> may capture objects included in the target space from a perspective which spans from <NUM> degrees to <NUM> degrees (corresponding to <NUM> degrees) with respect to the preset reference point.

<FIG> shows N capturing devices <NUM>, <NUM>, <NUM>, and <NUM> capture images of objects included in the target space, respectively. For example, N capturing devices <NUM>, <NUM>, <NUM>, and <NUM> capture images of objects included in N regions of the target space, respectively. Herein, N capturing devices <NUM>, <NUM>, <NUM>, and <NUM> capture images, respectively, such that some objects overlap each other. The images captured by the N capturing devices <NUM>, <NUM>, <NUM>, and <NUM>, respectively, may be generated as a VR image capable of expressing a <NUM>-degree region of the target space through stitching.

<FIG> shows an arrangement of a plurality of first through fifth capturing devices <NUM>, <NUM>, <NUM>, <NUM>, and <NUM> may be changed in a range capable of obtaining an image of all objects existing in the target space. For example, by combining images captured by the first capturing device <NUM>, the second capturing device <NUM>, the third capturing device <NUM>, the fourth capturing device <NUM>, and the fifth capturing device <NUM>, respectively, the image of all the objects existing in the <NUM>-degree region of the target space may be obtained.

<FIG> shows capturing devices <NUM>, <NUM>, <NUM>, and <NUM> may be rectangular cameras, or cameras which are capable of capturing rectilinear images. The capturing device may have various forms in a range that does not distort a structure of an obtained image, and the obtained image may have various angles such as a wide angle, a narrow angle, or the like.

The device <NUM> determines mapping between a 3D mesh model for generating a VR image and one or more images based on information about capturing angles of images obtained by capturing objects of the target space, positions of the capturing devices, and so forth.

<FIG> is a view for describing one or more images and metadata transmitted from the device <NUM> to the terminal <NUM>.

The device <NUM> obtains one or more images <NUM> which are or may include captured images of objects included in a target space. The device <NUM> generates metadata which may be used to generate a VR image of the target space based on the obtained one or more images <NUM>.

The metadata generated by the device <NUM> may include quality correction information <NUM>, weight information <NUM>, 3D mesh model information <NUM>, and mapping information <NUM>.

For example, the device <NUM> may determine the quality correction information <NUM> including a lens shading correction parameter, a white balancing parameter, etc., for noise cancellation and quality improvement for the one or more images <NUM>.

The device <NUM> identifies an overlapping object in case of stitching of the one or more images <NUM>. For example, the device <NUM> may identify an object overlapping between a first image, which is a captured image of a first region of the target space, and a second image, which is a captured image of a second region of the target space. The device <NUM> determines pixel values of the overlapping object between the first image and the second image, based on a weight value w1 for a pixel value of the first image and a weight value w2 for a pixel value of the second image. The weight information may exist in the form of a blending mask.

The device <NUM> determines 3D mesh model information <NUM>, which is a basis of rendering the one or more images <NUM> into a <NUM>-degree VR image of the target space. For example, the 3D mesh model information <NUM> may include information about a form and a resolution of the 3D mesh model, and so forth.

The device <NUM> determines mapping information <NUM> indicating mapping between the one or more images <NUM> and the 3D mesh model. The mapping information <NUM> may include information about positions at which pixels included in the one or more images <NUM> are mapped onto the 3D mesh model.

The device <NUM> transmits metadata including quality correction information <NUM>, weight information <NUM>, the 3D mesh model information <NUM>, and the mapping information <NUM> to the terminal <NUM>. The terminal <NUM> renders the VR image of the target space from the one or more images <NUM> based on the metadata received from the device <NUM>.

The device <NUM> obtains one or more images <NUM> which are or may include captured images of objects included in a target space. The device <NUM> generates metadata which may be used to generate a VR image of the target space based on the obtained one or more images <NUM>. For example, the metadata may include quality correction information <NUM>, weight information <NUM>, 3D mesh model information <NUM>, and mapping information <NUM>.

The device <NUM> performs some of a plurality of processes that may be performed to generate the VR image of the target space from the one or more images <NUM>. The device <NUM> transmits information which may be used to perform other processes to the terminal <NUM> together with the one or more images which have undergone the some processes, as the metadata.

Referring to <FIG>, the device <NUM> performs a process of correcting the quality of the one or more images <NUM> based on the quality correction information <NUM>. For example, the device <NUM> may correct noise of a pixel value of the one or more images <NUM>, caused by lens shading, or adjust white balancing of the pixel value.

The device <NUM> may convert pixel values of an overlapping object which overlaps between the one or more images by applying the weight information <NUM> to the quality-corrected one or more images.

The device <NUM> transmits one or more images <NUM>, which has undergone the quality correction process and the weight information application process, to the terminal <NUM> together with metadata including the 3D mesh model information <NUM> and the mapping information <NUM>.

The device <NUM> performs some processes and then transmits results to the terminal <NUM>, thereby reducing the amount of computation of the terminal <NUM> and reducing distortion occurring when the device <NUM> performs all of the processes.

The device <NUM> obtains one or more images <NUM> which are or may include captured images of objects included in a target space. The device <NUM> generates metadata which may be used to generate a VR image of the target space based on the obtained one or more images <NUM>. For example, the metadata may include quality correction information <NUM>, weight information <NUM>, and 3D mesh model and mapping information <NUM>. However, this is merely an example, and when 3D mesh model information is previously set between the device <NUM> and the terminal <NUM>, the 3D mesh model information may be not included in the metadata.

The device <NUM> performs some of a plurality of processes that may be performed to generate the VR image of the target space from the one or more images <NUM>. The device <NUM> transmits information which may be used to perform the other processes to the terminal <NUM> together with the one or more images which have undergone the some processes, as the metadata.

The device <NUM> transmits one or more images <NUM>, which have undergone the quality correction process and the weight information application process, to the terminal <NUM> together with the metadata including the mapping information <NUM>. Herein, the mapping information <NUM> may include information about positions at which pixels included in the one or more images <NUM> are mapped onto the 3D mesh model. In <FIG>, it is assumed that the 3D mesh model information is previously stored or made as a parameter, in order to be generated by any terminal without detailed information.

<FIG> is a view for describing one or more images and metadata transmitted from the device <NUM> to the terminal <NUM>. The embodiment shown in <FIG> is similar with that shown in <FIG>, except that mapping information is replaced with information <NUM> available for calculation of metadata without being directly stored in the metadata. For example, as shown in <FIG>, position information <NUM> and angle information <NUM> of a camera may be included in information <NUM> available for calculation of metadata. However, this is merely an example, and the information <NUM> available for calculation of the metadata is not limited to this example.

<FIG> is a view for describing one or more images and metadata transmitted from the device <NUM> to the terminal <NUM>. The embodiment shown in <FIG> is similar with that shown in <FIG>, except that after correcting noise of a pixel value, caused by lens shading, adjusting white balancing, or adjusting pixel values of an overlapping object using weight information, the device <NUM> converts the result image into a new image by newly projecting the image using a normalized camera pose. Camera pose or mapping data information included in the metadata transmitted to the terminal <NUM> may be converted based on normalized camera pose information <NUM>. Herein, the normalized camera pose information <NUM> indicates a pose of a camera arranged such that a capturing angle at an identical position <NUM> corresponds to an angle <NUM> obtained by equally dividing a <NUM>-degree space.

Meanwhile, some processes performed by the device <NUM> and information included in metadata transmitted to the terminal <NUM> are not limited to examples described above with reference to <FIG>.

<FIG> are flow diagrams illustrating a method, performed by the device <NUM>, of transmitting one or more images to a terminal.

The device <NUM> may edit one or more images transmitted to the terminal <NUM>. For example, the device <NUM> may change the size and arrangement of the one or more images while maintaining the form of the one or more images.

Referring to <FIG>, the device <NUM> may reduce the size of one or more images <NUM> including a first image <NUM> and a second image <NUM>. The device <NUM> transmits one or more images <NUM> including a size-reduced first image <NUM> and a size-reduced second image <NUM> to the terminal <NUM> together with metadata.

Referring to <FIG>, the device <NUM> crops a region of one or more images <NUM> including a first image <NUM> and a second image <NUM>. If some objects included in the first image <NUM> and the second image <NUM> overlap, the device <NUM> crops a region of the first image <NUM> and a region of the second image <NUM> where the overlapping object is expressed. For example, if the first image <NUM> is a captured image of objects existing in a region which spans from <NUM> degrees to <NUM> degree of the target space and the second image <NUM> is a captured image of objects existing in a region which spans from <NUM> degrees to <NUM> degrees of the target space, the device <NUM> may crop regions of images which include objects existing in a region which spans from <NUM> degrees to <NUM> degrees in the first image <NUM> and objects existing in a region which spans from <NUM> degrees to <NUM> degrees in the second image <NUM>.

Referring to <FIG>, the device <NUM> may change an arrangement of one or more images <NUM> including a first image <NUM> and a second image <NUM>. For example, the device <NUM> may change an arrangement of the first image <NUM> and the second image <NUM> in at least one of up, down, left, or right directions. The device <NUM> transmits the arrangement-changed one or more images <NUM> to the terminal <NUM> together with the metadata.

The device <NUM> may reduce the amount of data to be transmitted to the terminal <NUM> from the device <NUM>, by editing and transmitting the one or more images to the terminal <NUM>.

<FIG> is a flow diagram illustrating a method, performed by the device <NUM>, of transmitting one or more images <NUM> and <NUM> to the terminal <NUM>.

The device <NUM> may edit one or more images transmitted to the terminal <NUM>. Herein, the device <NUM> edits one or more images obtained from the camera or one or more images that have undergone the quality correction process or the blending process.

Referring to <FIG>, the device <NUM> transmits a first image <NUM> and a second image <NUM> to the terminal <NUM> to render the VR image of the target space in the terminal <NUM>. The device <NUM> edits the first image <NUM> and the second image <NUM> to reduce the amount of data transmitted to the terminal <NUM>.

For example, the device <NUM> may crop a portion of the first image <NUM> and a portion of the second image <NUM> and arrange a cropped region in another position to minimize a margin area generated due to circular shapes of the first image <NUM> and the second image <NUM>. The device <NUM> crops a first upper region <NUM>, a first right region <NUM>, a first lower region <NUM>, and a first left region <NUM> of the first image <NUM> and arranges the cropped regions in other positions. The device <NUM> crops a second upper region <NUM>, a second right region <NUM>, a second lower region <NUM>, and a second left region <NUM> of the second image <NUM> and arranges the cropped regions in other positions.

The positions in <FIG> at which the cropped regions <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, and <NUM> are merely examples, and the device <NUM> may arrange the cropped regions <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, and <NUM> in various positions.

The device <NUM> re-arranges a partial region of each of the first image <NUM> and the second image <NUM> to improve the coding efficiency of the one or more images <NUM> and <NUM> transmitted to the terminal <NUM>.

<FIG> is a flow diagram illustrating a method of the present techniques, performed by the device <NUM>, of transmitting one or more images <NUM> and <NUM> to the terminal <NUM>.

Referring to <FIG>, for example, to minimize a margin region generated due to circular shapes of the first image <NUM> and the second image <NUM>, the device <NUM> may crop image regions <NUM> and <NUM> of the first image <NUM> and the second image <NUM>, excluding the margin region, in the form of a band. The device <NUM> arranges the first image region <NUM> edited in a band form and the second image region <NUM> edited in a band form to correspond to a structure of a rectangular image.

The device <NUM> transmits the image disposed to correspond to the structure of the rectangular image to the terminal <NUM>. The device <NUM> re-arranges the image regions <NUM> and <NUM> of each of the first image <NUM> and the second image <NUM> in the band form to improve the coding efficiency of one or more images transmitted to the terminal <NUM>.

<FIG> are views for describing a method, performed by the device <NUM>, of transmitting one or more images <NUM> and <NUM> to the terminal <NUM>.

Referring to <FIG>, a margin region having no data may exist in a first image <NUM> and a second image <NUM> transmitted to the terminal <NUM> from the device <NUM>. First and second overlapping regions <NUM> and <NUM> including a photographed overlapping object may be included in the first image <NUM> and the second image <NUM>. Regions of images including non-overlapping objects in the first image <NUM> and the second image <NUM> will be referred to as unique first and second image regions <NUM> and <NUM>.

The device <NUM> effectively arranges the overlapping regions <NUM> and <NUM> of the first image <NUM> and the second image <NUM> to minimize margin regions included in images transmitted from the device <NUM> to the terminal <NUM>. Thus, the device <NUM> may improve the coding efficiency of a transmission image.

For example, the device <NUM> may determine the first overlapping region <NUM> and the second overlapping region <NUM> including the captured overlapping object in the first image <NUM> and the second image <NUM>, respectively. The device <NUM> separates the first overlapping region <NUM> and the second overlapping region <NUM> in a band form, such that an image to be transmitted to the terminal <NUM> has a rectangular structure. Thus, a margin region of the image to be transmitted to the terminal <NUM> from the device <NUM> is reduced, increasing the coding efficiency.

Referring to <FIG>, the device <NUM> blends the first and second regions <NUM> and <NUM> included in the first image <NUM> and the second image <NUM> according to a preset weight value. For example, the device <NUM> may sum pixel values of pixels included in the first overlapping region <NUM> and pixel values of pixels included in the second overlapping region <NUM> according to a preset weight value.

The device <NUM> arranges a blended overlapping region <NUM>, the first unique image region <NUM>, and the second unique image region <NUM> in a rectangular structure and transmits a rectangular-structure image to the terminal <NUM>.

Referring to <FIG>, the device <NUM> edits the blended overlapping region <NUM> generated by blending the first and regions <NUM> and <NUM> included in the first image <NUM> and the second image <NUM> according to a preset weight value.

The device <NUM> changes a size or arrangement of the blended overlapping region <NUM>. For example, the device <NUM> may generate a reduced overlapping region <NUM> by reducing the size of the blended overlapping region <NUM>. According to another example, the device <NUM> may generate a rearranged overlapping region <NUM> by rearranging a portion of the blended overlapping region <NUM>.

The device <NUM> transmits a rectangular-structure image including the reduced overlapping region <NUM> or the rearranged overlapping region <NUM>, the first unique image region <NUM>, and the second unique image region <NUM> to the terminal <NUM>.

<FIG> is a flow diagram of a method, performed by the device <NUM>, of transmitting one or more images <NUM> to the terminal <NUM>.

The device <NUM> selects a portion of the obtained one or more images <NUM>. For example, the device <NUM> may obtain object-of-interest information regarding an object of the target space in which the user is interested. The object-of-interest information may be generated automatically by sensing a change in a user's gaze or operation by the terminal <NUM> or may be generated based on a user input. The terminal <NUM> may transmit the generated object-of-interest information to the device <NUM>. However, this is merely an example, and a method of selecting a portion of the obtained one or more images <NUM> by the device <NUM> is not limited thereto.

Referring to <FIG>, the device <NUM> selects a first image <NUM> captured by a capturing device located in a first direction from among the one or more images <NUM>. For example, if the device <NUM> receives information indicating that a user's gaze is directed in the first direction from the terminal <NUM>, the device <NUM> may select the first image <NUM> corresponding to the first direction from among the one or more images <NUM>.

In another example, the device <NUM> selects a second image <NUM> captured by a capturing device located in a second direction from among the one or more images <NUM>. For example, if the device <NUM> receives information indicating that a user's gaze is directed in the second direction from the terminal <NUM>, the device <NUM> may select the second image <NUM> corresponding to the second direction from among the one or more images <NUM>.

However, this is merely an example, and the device <NUM> may select a portion from the one or more images <NUM> based on the object-of-interest information obtained from the terminal <NUM>. For example, the device <NUM> may select a portion <NUM> including a boundary region between the first image <NUM> and the second image <NUM> from the one or more images <NUM>. In another example, the device <NUM> may select a portion <NUM> including upper regions of the first image <NUM> and the second image <NUM>.

The device <NUM> transmits a selected object image and metadata regarding the selected object image to the terminal <NUM>. The device <NUM> applies the above-described quality correction process or blending process to the selected object image to convert the selected object image. The device <NUM> transmits the converted image and the metadata regarding the selected object image to the terminal <NUM>.

The device <NUM> determines encoding qualities differently for a region corresponding to an object of interest and a region other than the region corresponding to the object of interest in the one or more images <NUM>, based on the object-of-interest information obtained from the terminal <NUM>, thereby improving coding efficiency.

<FIG> is a flowchart of a method, performed by the terminal <NUM>, of processing an image.

In operation S1210, the terminal <NUM> obtains one or more images, which are or may include captured images of objects included in the target space, and metadata regarding the one or more images from the device <NUM>.

The terminal <NUM> sends a request for the one or more images and the metadata regarding the one or more images to the device <NUM> to render a VR image of the target space. For example, if the terminal <NUM> receives a user input for selecting the target space from the user, the terminal <NUM> may send a request for the one or more images and the metadata regarding the one or more images to the device <NUM>.

The terminal <NUM> receives one or more images, which are or may include captured images of objects included in the target space, and metadata regarding the one or more images from the device <NUM> through a preset communication session. The terminal <NUM> receives the one or more images and the metadata regarding the one or more images on a real time basis.

The obtained one or more images may be images generated as a result of applying post-processing, such as the quality correction process and the blending process, to captured images of objects included in the target space.

In operation S1220, the terminal <NUM> obtains from the metadata information about mapping between the one or more images and a 3D mesh model used to generate the VR image of the target space.

The terminal <NUM> parses the metadata to obtain the information about mapping. The information about mapping may include information about positions at which pixels included in the one or more images are mapped onto the 3D mesh model.

In operation S1230, the terminal <NUM> renders the one or more images based on the information about mapping to generate a VR image of the target space.

The terminal <NUM> renders the one or more images, depending on a type of the 3D mesh model, based on the information about mapping. For example, the terminal <NUM> may generate the VR image of the target space by mapping the pixels included in the one or more images onto the 3D mesh model, based on the information about mapping.

The VR image may include at least one of a still image and a moving image.

In operation S1240, the terminal <NUM> outputs the generated VR image.

The terminal <NUM> displays the generated VR image. The terminal <NUM> senses a user's gaze and outputs at least one region of the VR image, which corresponds to the sensed user's gaze. The terminal <NUM> is coupled to an HMD device or the like to output the generated VR image through the HMD device.

In operation S1310, the terminal <NUM> obtains one or more images, which are or may include captured images of objects included in the target space, and metadata regarding the one or more images from the device <NUM>.

The obtained one or more images may be images generated as a result of applying post-processing, such as the blending process, to captured images of objects included in the target space.

In operation S1320, the terminal <NUM> corrects the quality of the one or more images based on quality correction information included in the metadata.

The terminal <NUM> parses the metadata to obtain the quality correction information. The quality correction information may include a lens shading correction parameter, a white balancing parameter, and so forth. The terminal <NUM> corrects pixel values of pixels included in each of the one or more images by using the obtained quality correction information.

In operation S1330, the terminal <NUM> obtains from the metadata information about mapping between the one or more images and a 3D mesh model used to generate the VR image of the target space.

Operation S1330 may correspond to operation S1220 described with reference to <FIG>.

In operation S1340, the terminal <NUM> renders the quality-corrected one or more images based on the information about mapping to generate the VR image of the target space.

The terminal <NUM> may generate the VR image of the target space by mapping the pixels included in the quality-corrected one or more images onto the 3D mesh model, based on the information about mapping.

In operation S1350, the terminal <NUM> outputs the generated VR image.

Operation S1350 may correspond to operation S1240 described with reference to <FIG>.

In operation S1410, the terminal <NUM> obtains one or more images, which are or may include captured images of objects included in the target space, and metadata regarding the one or more images from the device <NUM>.

The obtained one or more images may be images generated as a result of applying post-processing, such as the quality correction process, to captured images of objects included in the target space.

In operation S1420, the terminal <NUM> converts the one or more images by blending pixel values of pixels included in an image including an overlapping object according to a preset weight value based on weight information included in the metadata. The weight information may indicate a weight value for blending pixel values of pixels included in the overlapping object between the one or more images.

The terminal <NUM> parses the metadata to obtain the weight information. The terminal <NUM> may perform blending by using weight value w1 as a weight value for a pixel a included in a region in which an overlapping object is expressed in a first image and weight value w2 as a weight value for a pixel b included in a region in which the overlapping object is expressed in a second image, respectively.

In operation S1430, the terminal <NUM> obtains from the metadata information about mapping between the one or more images and a 3D mesh model used to generate the VR image of the target space.

Operation S1430 may correspond to operation S1220 described with reference to <FIG>.

In operation S1440, the terminal <NUM> renders the converted one or more images based on the information about mapping to generate the VR image of the target space.

The terminal <NUM> may generate the VR image of the target space by mapping the pixels included in the blended one or more images onto the 3D mesh model, based on the information about mapping.

In operation S1450, the terminal <NUM> outputs the generated VR image.

Operation S1450 may correspond to operation S1240 described with reference to <FIG>.

In operation S1510, the terminal <NUM> obtains one or more images, which are or may include captured images of objects included in the target space, and metadata regarding the one or more images from the device <NUM>.

In operation S1520, the terminal <NUM> converts the one or more images based on at least one of quality correction information and weight information included in the metadata.

For example, the terminal <NUM> may convert the one or more images by correcting the quality of the one or more images based on the quality correction information as described with reference to <FIG>, or by blending pixel values of pixels in an image in which an overlapping object is expressed according to a preset weight value based on the weight information as described with reference to <FIG>. In another example, the terminal <NUM> may convert at the least one image by applying the quality correction process based on the quality correction information and the blending process based on the weight information to the one or more images.

In operation S1530, the terminal <NUM> obtains from the metadata information about mapping between the one or more images and a 3D mesh model used to generate the VR image of the target space.

Operation S1530 may correspond to operation S1220 described with reference to <FIG>.

In operation S1540, the terminal <NUM> renders the converted one or more images based on the information about mapping to generate the VR image of the target space.

In operation S1550, the terminal <NUM> outputs the generated VR image.

Operation S1550 may correspond to operation S1240 described with reference to <FIG>.

In operation S1610, the terminal <NUM> obtains one or more images, which are or may include captured images of objects included in the target space, and metadata regarding the one or more images from the device <NUM>.

In operation S1620, the terminal <NUM> converts the one or more images based on at least one of quality correction information and weight information included in the metadata.

In operation S1630, the terminal <NUM> obtains normalized camera pose information included in the metadata.

In operation S1640, the terminal <NUM> converts the converted image based on the normalized camera pose information. For example, the terminal <NUM> may project the converted image to fit a capturing angle included in the normalized camera pose information.

In operation S1650, the terminal <NUM> obtains second mapping information by reflecting the normalized camera pose information into first mapping information about mapping between a 3D mesh model used to generate the VR image of the target space and the one or more images. For example, the mapping between the mesh model and the one or more images may be converted to fit the capturing angle included in the normalized camera pose information to obtain the second mapping information.

In operation S1660, the terminal <NUM> renders the one or more images converted based on the normalized camera pose information according to the second mapping information to generate the VR image of the target space.

In operation S1670, the terminal <NUM> outputs the generated VR image.

Operation S1670 may correspond to operation S1240 described with reference to <FIG>.

<FIG> is a block diagram of an electronic device <NUM>.

As shown in <FIG>, the electronic device <NUM> may include an image obtainer <NUM>, a controller <NUM>, and a communication interface <NUM>. However, not all of the illustrated elements are essential elements. The electronic device <NUM> may include a larger or smaller number of elements than the illustrated elements.

The image obtainer <NUM> obtains one or more images, which are or may include captured images of objects included in the target space.

The image obtainer <NUM> obtains the one or more images from an external capturing device. The device <NUM> obtains the one or more images by capturing the objects included in the target space using a camera included in the device <NUM>.

The controller <NUM> generates metadata including information about mapping between a 3D mesh model used to generate the VR image of the target space and the one or more images.

The controller <NUM> determines a type or resolution of the 3D mesh model used to generate the VR image of the target space. The controller <NUM> determines positions of one or more images mapped onto the 3D mesh model based on the 3D mesh model of the determined type or resolution. For example, the controller <NUM> determines positions of pixels included in one or more images mapped onto the 3D mesh model, based on information about angles at which the one or more images are captured, positions of capturing devices that capture the one or more images, and so forth.

The controller <NUM> may obtain a capturing parameter regarding arrangement and capturing angles of capturing devices, together with the one or more images. The controller <NUM> determines positions at which the pixel values of the one or more images are mapped onto the 3D mesh model, based on the obtained capturing parameter.

The metadata generated by the controller <NUM> may further include quality correction information of the one or more images. In another example, the metadata generated by the controller <NUM> may further include weight information of the one or more images.

The controller <NUM> may perform the quality correction information with respect to the one or more images. For example, the controller <NUM> may correct pixel values of the one or more images according to a lens shading parameter, a white balancing parameter, etc., of the one or more images.

The controller <NUM> converts the one or more images by blending pixel values of pixels included in the one or more images including an overlapping object according to a preset weight value based on weight information included in the metadata.

The controller <NUM> edits the one or more images, before transmitting the one or more images to the terminal <NUM> together with the metadata. For example, the controller <NUM> may change the size and arrangement of the one or more images while maintaining the form of the one or more images. In another example, to minimize a margin region generated due to the circular shape of the image, the controller <NUM> may edit an image region in the one or more images, excluding the margin region. In another example, the controller <NUM> may minimize margin regions included in images to be transmitted to the terminal <NUM> from the device <NUM>, by effectively disposing a region in which an overlapping object is expressed in the one or more images. In another example, the controller <NUM> may blend overlapping regions included in the one or more images according to a preset weight value to transmit the edited one or more images to the terminal <NUM> through the communication interface <NUM>.

The controller <NUM> selects a portion of the one or more images. For example, the controller <NUM> may select a portion of the one or more images, based on object-of-interest information indicating an object in which the user is interested. The selected portion of the one or more images may be transmitted to the terminal <NUM>, together with metadata corresponding to the portion of the one or more images, through the communication interface <NUM>.

The communication interface <NUM> transmits the one or more images and the metadata to the terminal <NUM>.

The communication interface <NUM> encodes and transmits the one or more images and the metadata to the terminal <NUM>. The communication interface <NUM> performs the process of correcting the quality of the one or more images and transmits the quality-corrected one or more images and metadata to the terminal <NUM>.

If the controller <NUM> converts the one or more images by blending pixel values of pixels included in the one or more images including an overlapping object according to a preset weight value, the communication interface <NUM> transmits the converted one or more images and metadata to the terminal <NUM>.

<FIG> and <FIG> are block diagrams of the terminal <NUM>.

As shown in <FIG>, the terminal <NUM> may include a communication interface <NUM>, a controller <NUM>, and an output interface <NUM>. However, not all of the illustrated elements are essential elements. The terminal <NUM> may include a larger or smaller number of elements than the illustrated elements.

For example, as shown in <FIG>, the terminal <NUM> may include a sensor <NUM>, a user input interface <NUM>, an audio/video (A/V) input interface <NUM>, and a memory <NUM> as well as the communication interface <NUM>, the controller <NUM>, and the outputter <NUM>.

Hereinbelow, the foregoing elements will be described in detail.

The communication interface <NUM> obtains one or more images, which are or may include captured images of objects included in the target space, and metadata regarding the one or more images from the device <NUM>.

The communication interface <NUM> sends a request for the one or more images and the metadata regarding the one or more images to the device <NUM> to render a VR image of the target space. For example, if receiving a user input for selecting the target space through the user input interface <NUM>, the communication interface <NUM> may send a request for the one or more images and the metadata regarding the one or more images to the device <NUM>.

The communication interface <NUM> receives one or more images, which are or may include captured images of objects included in the target space, and metadata regarding the one or more images from the device <NUM> through a preset communication session. The obtained one or more images may be images generated as a result of applying post-processing, such as the quality correction process and the blending process, to captured images of objects included in the target space.

If the terminal <NUM> is coupled with an external device such as an HMD device, the communication interface <NUM> transmits the VR image generated by the controller <NUM> to the external device to output the VR image through the external device.

The communication interface <NUM> may include one or more elements that enable communication between the terminal <NUM> and the external device (e.g., the device <NUM> of <FIG>). For example, the communication interface <NUM> may include a short-range wireless communication interface <NUM>, a mobile communication interface <NUM>, and a broadcasting receiver <NUM>.

The short-range wireless communication interface <NUM> may include, but is not limited to, a Bluetooth Low Energy (BLE) communication interface, a near field communication (NFC) unit, a wireless local area network (WLAN) (WiFi) communication interface, a ZigBee communication interface, an infrared Data Association (IrDA) communication interface, a WiFi Direct (WFD) communication interface, an ultra-wideband (UWB) communication interface, and an Ant+ communication interface.

The mobile communication interface <NUM> transmits and receives a radio signal to and from at least one of a base station, an external terminal, and a server over a mobile communication network. Herein, the radio signal may include various forms of data corresponding to transmission/reception of a voice call signal, a video communication call signal, or a text/multimedia message.

The broadcasting receiver <NUM> receives a broadcast signal and/or broadcasting-related information from an external source through a broadcasting channel. The broadcasting channel may include a satellite channel and a terrestrial channel. According to implementation examples, the terminal <NUM> may not include the broadcasting receiver <NUM>.

The controller <NUM> controls an overall operation of the terminal <NUM>. For example, the controller <NUM> may control in overall the communication interface <NUM>, the outputter <NUM>, the sensor <NUM>, the user input interface <NUM>, the A/V input interface <NUM>, and the memory <NUM> by executing programs stored in the memory <NUM>.

The controller <NUM> obtains information about mapping between a 3D mesh model used to generate the VR image of the target space and the one or more images. For example, the controller <NUM> may parse the metadata to obtain the information about mapping.

The controller <NUM> renders the one or more images based on the information about mapping to generate the VR image of the target space. For example, the controller <NUM> may generate the VR image of the target space by mapping the pixels included in the one or more images onto the 3D mesh model, based on the information about mapping.

The controller <NUM> corrects the quality of the one or more images based on quality correction information included in the metadata. The controller <NUM> parses the metadata to obtain the quality correction information. The controller <NUM> corrects pixel values of pixels included in each of the one or more images by using the obtained quality correction information. The controller <NUM> renders the quality-corrected one or more images based on the information about mapping to generate the VR image of the target space.

The controller <NUM> converts the one or more images by blending pixel values of pixels included in the one or more images including an overlapping object according to a preset weight value based on weight information included in the metadata. The controller <NUM> renders the converted one or more images based on the information about mapping to generate the VR image of the target space.

The output interface <NUM> outputs an audio signal, a video signal, or a vibration signal, and may include a display <NUM>, an audio output interface <NUM>, a vibration motor <NUM>, and so forth.

The display <NUM> displays information processed by the terminal <NUM>. For example, the display <NUM> may output the VR image generated as a result of rendering in the controller <NUM>. The display <NUM> outputs at least a region of the VR image, which corresponds to a user's gaze sensed by the sensor <NUM>.

In another example, the display <NUM> displays a menu for selecting one of a plurality of target spaces.

When the display <NUM> and a touch pad are constructed as a touch screen in a layer structure, the display <NUM> may be used as an input device as well as an output device. The display <NUM> may include at least one of a liquid crystal display (LCD), a thin film transistor (TFT) LCD, an organic light-emitting diode (OLED), a flexible display, a 3D display, and an electrophoretic display. According to implementation types of the terminal <NUM>, the terminal <NUM> may include two or more displays <NUM>. In this case, the two or more displays <NUM> may be disposed to face each other by using a hinge.

The audio output interface <NUM> outputs audio data received from the communication interface <NUM> or stored in the memory <NUM>. The audio output interface <NUM> outputs an audio signal related to a function (e.g., a call signal receiving sound, a message receiving sound, an alarm sound, etc.) performed in the terminal <NUM>. The audio output interface <NUM> may include a speaker, a buzzer, or the like.

The vibration motor <NUM> outputs a vibration signal. For example, the vibration motor <NUM> may output a vibration signal corresponding to output of audio data or video data. The vibration motor <NUM> outputs a vibration signal if a touch is input to a touch screen.

The sensor <NUM> senses at least one of a state of the terminal <NUM>, a surrounding state of the terminal <NUM>, and a state of a user wearing the terminal <NUM>, and delivers sensed information to the controller <NUM>. For example, the sensor <NUM> may sense a gaze of the user wearing the terminal <NUM> or a motion of a head of the user.

The sensor <NUM> may include, but is not limited to, at least one of a geomagnetic sensor <NUM>, an acceleration sensor <NUM>, a temperature/humidity sensor <NUM>, an infrared sensor <NUM>, a gyroscope sensor <NUM>, a positioning sensor (e.g., a global positioning system (GPS)) <NUM>, a pressure sensor <NUM>, a proximity sensor <NUM>, and a red/green/blue (RGB) sensor (or an illuminance sensor) <NUM>. A function of each sensor may be intuitively construed from a name of each sensor by those of ordinary skill in the art, and thus will not be described in detail.

The user input interface <NUM> is a means for inputting data for controlling the terminal <NUM>. For example, the user input interface <NUM> may include, but is not limited to, a keypad, a dome switch, a touch pad (a capacitive overlay type, a resistive overlay type, an infrared beam type, a surface acoustic wave type, an integral strain gauge type, a piezoelectric effect type, etc.), a jog wheel, a jog switch, etc..

The user input interface <NUM> receives a user input requesting the VR image of the target space. The user input interface <NUM> receives a user input for selecting at least one of objects of the target space. However, this is merely an example, and a type of the user input received by the user input interface <NUM> is not limited to the above-described example.

The A/V input interface <NUM> inputs an audio signal or a video signal, and may include a camera <NUM>, a microphone <NUM>, and so forth. The camera <NUM> obtains an image frame such as a still image or a moving image in a video communication mode or a photographing mode through an image sensor. The image captured by the image sensor is processed by the controller <NUM> or a separate image processor.

An image frame processed by the camera <NUM> is stored in the memory <NUM> or transmitted to an external source through the communication interface <NUM>. Two or more cameras <NUM> may be provided according to a structure aspect of the terminal <NUM>.

The microphone <NUM> receives an external audio signal and processes the received signal into electric voice data. For example, the microphone <NUM> may receive an audio signal from an external device or a speaker. The microphone <NUM> uses various noise cancellation algorithms for canceling noise generated during reception of the external audio signal.

The memory <NUM> stores programs for processing and control by the controller <NUM> and stores input/output data (one or more images, metadata regarding the one or more images, and a VR image generated as a result of rendering, received from the device <NUM>).

The memory <NUM> may include a storage medium of at least one type of a flash memory type, a hard disk type, a multimedia card micro type, a card type memory (e.g., a secure digital (SD) or extreme digital (XD) memory, etc.), a random access memory (RAM), a static random access memory (SRAM), a read-only memory (ROM), an electrically erasable programmable read-only memory (EEPROM), a programmable read-only memory (PROM), a magnetic memory, a magnetic disk, an optical disk, and so forth. The device <NUM> operates a web storage or a cloud server that performs a storage function of the memory <NUM> on the Internet.

The programs stored in the memory <NUM> may be classified into a plurality of modules depending on a function thereof, e.g., a user interface (UI) module <NUM>, a touch screen module <NUM>, a notification module <NUM>, and so forth.

The UI module <NUM> provides a specialized UI or graphic UI (GUI) interworking with the terminal <NUM> for each application. The touch screen module <NUM> senses a touch gesture of a user on a touch screen and delivers information about the touch gesture to the controller <NUM>. The touch screen module <NUM> of the present disclosure recognizes and analyzes a touch code. The touch screen module <NUM> is configured with separate hardware including a controller.

To sense a touch or proximity touch on the touch screen, various sensors may be provided inside or near the touch screen. An example of the sensor for sensing a touch on the touch screen may be a tactile sensor. The tactile sensor refers to a sensor that senses a touch by a particular object to the extent or larger to which a person feels the touch. The tactile sensor senses a lot of information such as the roughness of a contact surface, the hardness of a contact object, the temperature of a contact point, etc..

An example of the sensor for sensing a touch on the touch screen may be a proximity sensor.

The proximity sensor refers to a sensor that detects existence or absence of an object that approaches or is in proximity to a detection surface by using the force of an electromagnetic field or infrared rays, without a mechanical contact. Examples of the proximity sensor may include a transmission optoelectronic sensor, a direct reflective optoelectronic sensor, a mirror reflective optoelectronic sensor, a radio frequency oscillation proximity sensor, an electrostatic capacity proximity sensor, a magnetic proximity sensor, an infrared proximity sensor, and so forth. The user's touch gesture may include a tap, a touch & hold, a double tap, a drag, panning, a flick, a drag & drop, a swipe, and so forth.

The notification module <NUM> generates a signal for notifying of an occurrence of an event of the terminal <NUM>. Examples of the event occurring in the terminal <NUM> may include key signal input, and so forth. The notification module <NUM> outputs a notification signal in the form of a video signal through the display <NUM>, in the form of an audio signal through the audio output interface <NUM>, and/or in the form of a vibration signal through the vibration motor <NUM>.

The methods may be implemented in the form of program commands that can be executed through various computer components and recorded in a computer-readable recording medium. The computer-readable recording medium may include a program command, a data file, a data structure and the like solely or in a combined manner. The program command recorded in the computer-readable recording medium may be a program command specially designed and configured for the present techniques or a program command known to be used by those skilled in the art of the computer software field. Examples of the computer-readable recording medium may include magnetic media such as hard disk, floppy disk, and magnetic tape, optical media such as compact disk read only memory (CD-ROM) and digital versatile disk (DVD), magneto-optical media such as floptical disk, and a hardware device especially configured to store and execute a program command, such as read only memory (ROM), random access memory (RAM) and flash memory, etc. Further, examples of the program instructions include a machine language code created by a complier and a high-level language code executable by a computer using an interpreter.

Claim 1:
A method, performed by a device (<NUM>), of processing an image, the method comprising:
obtaining at least two images (<NUM>) of a target space captured using a camera, and a lens shading correction parameter and a weight value for blending pixel values of pixels, wherein the at least two images have a circular shape;
determining 3D mesh model information (<NUM>) and mapping information (<NUM>) for the at least two images, wherein the mapping information indicates mapping between the at least two images and the 3D mesh model;
generating metadata (<NUM>) including the lens shading correction parameter, the weight value for blending pixel values of pixels included in overlapped regions, the 3D mesh model information and the mapping information;
editing the at least two images to minimize margin regions having no data included, which are generated due to transmitting images of circular shapes to a terminal using a rectangular image structure, by:
cropping image regions of each of the at least two images of the target space in the form of concentric bands (<NUM>, <NUM>); and
rearranging the cropped image regions to form a rectangular image transmitted to the terminal; and
transmitting the rectangular image and the metadata (<NUM>), to the terminal (<NUM>) for generating a <NUM> degree virtual reality, VR, image of the target space.