Patent Publication Number: US-9838663-B2

Title: Virtual viewpoint synthesis method and system

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
     This application is a continuation-in-part of International Patent Application No. PCT/CN2013/080282 with an international filing date of Jul. 29, 2013, designating the United States, now pending. The contents of all of the aforementioned applications, including any intervening amendments thereto, are incorporated herein by reference. Inquiries from the public to applicants or assignees concerning this document or the related applications should be directed to: Matthias Scholl P. C., Attn.: Dr. Matthias Scholl Esq., 245 First Street, 18th Floor, and Cambridge, Mass. 02142. 
    
    
     BACKGROUND OF THE INVENTION 
     Field of the Invention 
     The invention relates to a technical field of multi-view video encoding and decoding, in particular to a virtual viewpoint synthesis method and system. 
     Description of the Related Art 
     A multi-view video refers to a set of video signals obtained by recording the same scene from different angles by multiple cameras with different viewpoints, and is an effective 3D video representation method, which can make the scene be perceived more vividly. It has extremely wide application in 3D television, free viewpoint television, 3D video conference and video monitoring. 
     A multi-view video records the scene from different viewpoints by a set of synchronous cameras. The video can display images of corresponding angles according to a viewer&#39;s position while being displayed. When the viewer&#39;s head moves, what the viewer sees also changes correspondingly. Thus a “circular view” effect is created. 
     In order to obtain a natural and smooth motion parallax effect, extremely densely arranged cameras are needed to obtain a multi-view video sequence. However, as the number of cameras increases, the data volume of the multi-view video also doubles, which is a great challenge for data storage and transmission. 
     Under the condition of a low code rate, in order to obtain a high-quality 3D video stream, the multi-view video generally adopts a format of double viewpoints plus depth, compresses and encodes colorful video images and depth images respectively. The video decoding adopts the virtual viewpoint synthesis technology of depth image based rendering (DIBR), uses left and right viewpoints and corresponding depth images to generate a multi-view video, and rebuilds a one angle or multi-angle 3D video according to a user&#39;s requirements (3D Video or free viewpoint video). The virtual viewpoint synthesis technology is one of the key technologies in encoding and decoding multi-viewpoint videos. The quality of composite images has a direct influence on the watching quality of multi-viewpoint videos. 
     A virtual viewpoint synthesis method in the prior art only has one virtual image during the entire process, and searches for candidate pixels in left and right reference viewpoints at the same time for one pixel. Therefore, the candidate pixel set of the pixel may comprise pixels from two viewpoints and all candidate pixels are used in the following weighted summation without screening. The depth image-based method depends on the accuracy of depth images greatly. The discontinuity of depth images may also influence the quality of composite views. Therefore, the conventional solutions suffer from problems either in boundary regions or in background regions. 
     SUMMARY OF THE INVENTION 
     In view of the above described problems, the invention provides a virtual viewpoint synthesis method and system. 
     According to the first aspect of the invention, the invention provides a virtual viewpoint synthesis method comprising that: 
     it establishes a left viewpoint virtual view and a right viewpoint virtual view and obtains (u, v) to (u+1, v) pixel blocks for the pixel with a coordinate of (u, v) in a virtual viewpoint, that is, I(u)=[u, u+1); 
     the left viewpoint virtual view searches for a candidate pixel in a left viewpoint reference view, the right viewpoint virtual view searches for a candidate pixel in a right viewpoint reference view, and a pixel block in which a candidate pixel is not found in the left viewpoint reference view and/or the right viewpoint reference view is marked as a hole point; 
     it ranks the found candidate pixels according to depth, successively calculates a foreground coefficient and a background coefficient, and performs weighted summation according to the foreground coefficient and the background coefficient, and, if the difference between the depth value of the current pixel and the depth value of the initial pixel in weighted summation exceeds the first predetermined threshold value, the pixels are not included in the weighted summation; 
     it enlarges the hole-point regions of the left viewpoint virtual view and/or the right viewpoint virtual view in the direction of the background to remove a ghost pixel; 
     it performs viewpoint synthesis on the left viewpoint virtual view and the right viewpoint virtual view; and 
     it fills the hole-points of a composite image. 
     In the method, the left viewpoint virtual view searches for a candidate pixel in the left viewpoint reference view; the right viewpoint virtual view searches for a candidate pixel in the right viewpoint reference view; and the pixel block in which a candidate pixel is not found in the left viewpoint reference view and/or the right viewpoint reference view is marked as a hole point; it also comprises that: 
     it searches for a candidate pixel in a reference view and sets a first adjustable parameter; when the first adjustable parameter is a preset initial value, 1 is added to the first adjustable parameter for a new search if a pixel block in which a candidate parameter isn&#39;t found; and, if the pixel block in which a candidate pixel is still not found, the pixel block is marked as a hole point. 
     In the method, the foreground coefficient is calculated by w j   f =|I j  (u r , t)∩I j  (u)|, and the background coefficient is calculated by w j   b =|I(u)∩I j (u r , t)|−w j   f ; in which, I j  (u r , t)=[u r −t, u r +1+t) represents a pixel block in a reference viewpoint, t represents a second adjustable parameter, and I j  (u) represents the specific gravity which isn&#39;t covered by previous pixels in a pixel block of a virtual viewpoint. The formula for performing weighted summation according to the foreground coefficient and the background coefficient is as below: 
                 Y   ⁡     (   u   )       =         ∑     j   =   1               ⁢          C   ⁡     (   u   )                ⁢           ⁢       (       w   j   f     +       α   j     ×     w   j   b         )     ⁢     Y   ⁡     (   j   )               ∑     j   =   1               ⁢          C   ⁡     (   u   )                ⁢     (       w   j   f     +       α   j     ×     w   j   b         )           ,         
in which, α j  controls pixel weights in a synthesis process according to depth values of pixels.
 
     In the method, the hole-point regions of the left viewpoint virtual view and/or the right viewpoint virtual view are enlarged in the direction of the background to remove a ghost pixel, which specifically comprises that:
         it scans the left viewpoint and/or right viewpoint virtual views line by line; when it scans a hole point, it records the initial position of the hole point and then continues to scan the views towards the right to find the right boundary of the hole-point region; then, it separately chooses a predetermined amount of pixels from the left and right boundaries outward in succession, and calculates the average depth values of pixels which are respectively recorded as d_left and d_right; it calculates the difference value between d_left and d_right; and then it compares the difference value between d_left and d_right to the second predetermined threshold value to determine the enlarging direction of hole-point regions:   if d_left-d_right is greater than the second predetermined threshold value, the hole-point region is enlarged towards the left;   if d_left-d_right is less than the second predetermined threshold value, the hole-point region is enlarged towards the right; and   if d_left-d_right equals to the second predetermined threshold value, the hole-point region isn&#39;t enlarged.       

     In the method, the viewpoint synthesis which is performed on the left viewpoint virtual view and the right viewpoint virtual view comprises that:
         when the left viewpoint virtual view and the right viewpoint virtual view both have pixel values, weighted summation is performed according to distances between the virtual points and the right and left viewpoints;   when only one virtual image has a pixel value in the left viewpoint virtual view and the right viewpoint virtual view and the corresponding point of another virtual image is a hole point, it takes the pixel value directly; and   when the left viewpoint virtual view and the right viewpoint virtual view are both hole points, it retains the hole points.       

     According to the second aspect of the invention, the invention provides a virtual viewpoint synthesis system comprising a viewpoint mapping module, a ghost pixel removal module, a viewpoint synthesis module and a small hole-filling module. The viewpoint mapping module comprises an establishment unit, a selection unit and a control unit. 
     The establishment unit is used to establish a left viewpoint virtual view and a right viewpoint virtual view. In a virtual viewpoint, it obtains (u, v) to (u+1, v) pixel blocks for a pixel with a coordinate of (u, v), that is, I(u)=[u, u+1). 
     The selection unit is used to search for a candidate pixel of the left viewpoint virtual view in the left viewpoint reference view and a candidate pixel of the right viewpoint virtual view in the right viewpoint reference view, and a pixel block in which a candidate pixel is not found in the left viewpoint virtual view and/or the right viewpoint virtual view is marked as a hole point. 
     The control unit ranks the found candidate pixels according to depth, successively calculates a foreground coefficient and a background coefficient, and performs weighted summation according to the foreground coefficient and the background coefficient, and, if the difference between the depth value of the current pixel and the depth value of the initial pixel in weighted summation exceeds the first predetermined threshold value, the pixels are not included in the weighted summation. 
     The ghost pixel removal module is used to enlarge the hole-point regions of the left viewpoint virtual view and/or the right viewpoint virtual view in the direction of the background to remove a ghost pixel. 
     The viewpoint synthesis module is used to perform viewpoint synthesis on the left viewpoint virtual view and the right viewpoint virtual view. 
     The small hole-filling module is used to fill the hole-points of a composite image. 
     In the system, the selection unit is also used to search for a candidate pixel in a reference view and set a first adjustable parameter. When the first adjustable parameter is a preset initial value, 1 is added to the first adjustable parameter for a new search if the pixel block of the candidate parameter is not found; and the pixel block is marked as a hole point if the pixel block of candidate pixels is still not found. 
     In the system, the foreground coefficient is calculated by w j   f =|I j  (u r , t)∩I j  (u)|, and the background coefficient is calculated by w j   b =∥(u)∩I j (u r , t)|−w j   f ; in which, I j  (u r , t)=[u r −t, u r +1+t) represents a pixel block in a reference viewpoint, t represents a second adjustable parameter, and I j  (u) represents the specific gravity which isn&#39;t covered by previous pixels in a pixel block of a virtual viewpoint. The formula for performing weighted summation according to the foreground coefficient and the background coefficient is as below: 
               Y   ⁢     (   u   )       =         ∑     j   =   1               ⁢          C   ⁡     (   u   )                ⁢       (       w   j   f     +       α   j     ×     w   j   b         )     ⁢     Y   ⁡     (   j   )               ∑     j   =   1               ⁢          C   ⁡     (   u   )                ⁢     (       w   j   f     +       α   j     ×     w   j   b         )               
in which, α j  controls weights in a synthesis process according to depth values of pixels.
 
     In the system, the ghost pixel removal module is also used to scan the left viewpoint and/or right viewpoint virtual views line by line; when it scans a hole point, it records the initial position of the hole point and then continues to scan the views towards the right to find the right boundary of the hole-point region; then, it separately chooses a predetermined amount of pixels from the left and right boundaries outward in succession, and calculates the average depth values of pixels which are respectively recorded as d_left and d_right; it calculates the difference value between d_left and d_right; and then it compares the difference value between d_left and d_right to the second predetermined threshold value to determine the enlarging direction of hole-point regions:
         if d_left-d_right is greater than the second predetermined threshold value, the hole-point region is enlarged towards the left;   if d_left-d_right is less than the second predetermined threshold value, the hole-point region is enlarged towards the right; and   if d_left-d_right equals to the second predetermined threshold value, the hole-point region isn&#39;t enlarged.       

     In the system, the viewpoint synthesis module is also used to perform weighted summation according to distances between the virtual points and the right and left viewpoints when the left viewpoint virtual view and the right viewpoint virtual view both have pixel values;
         when only one virtual image has a pixel value in the left viewpoint virtual view and the right viewpoint virtual view and the corresponding point of another virtual image is a hole point, it takes the pixel value directly; and   when the left viewpoint virtual view and the right viewpoint virtual view are both hole points, it retains the hole points.       

     Since the above technical proposal is used, the invention has the following advantageous effect: 
     In embodiments of the invention, since pixel blocks represent pixels, the left viewpoint virtual view searches for a candidate pixel in a left viewpoint reference view, the right viewpoint virtual view searches for a candidate pixel in a right viewpoint reference view. It searches pixel blocks in the left viewpoint virtual view and the right viewpoint virtual view respectively, ranks the found candidate pixels according to depth, and successively calculates a foreground coefficient and a background coefficient for performing weighted summation. If the difference between the depth value of the current pixel and the depth value of the initial pixel in weighted summation exceeds the first predetermined threshold value, the pixels are not included in the weighted summation. A pixel block in which a candidate pixel is not found is marked as hole point, the hole-point region is just a portion where color mixing occurs easily, and information in a corresponding image is used for filling, the phenomena of a boundary being mixed with a background, which easily occurs in a boundary region, is avoided, and good synthesis quality is obtained at boundary and non-boundary regions at the same time. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  is a flow diagram of a virtual viewpoint synthesis method in accordance with an embodiment of the invention; 
         FIGS. 2A and 2B  are diagrams of a single viewpoint mapping intermediate structure of the invention; 
         FIG. 3  is a diagram of a pixel block-based mapping mode of the invention; 
         FIG. 4  is a diagram of a pixel value computing method of the invention; 
         FIGS. 5A, 5B, 5C, and 5D  are diagrams of ghost pixel removal of the invention; 
         FIGS. 6A, 6B, and 6C  are comparison diagrams of synthesis results; 
         FIGS. 7A, 7B, 7C, and 7D  are curve diagrams of PSNR; 
         FIG. 8  is a histogram of average PSNR; and 
         FIG. 9  is a structural diagram of a virtual viewpoint synthesis system in accordance with an embodiment of the invention. 
     
    
    
     DETAILED DESCRIPTION OF THE EMBODIMENTS 
     The following content further explains the invention in detail with embodiments and figures. 
     Example 1 
     As shown in the figures, an embodiment of a virtual viewpoint synthesis method of the invention comprises the following steps: 
     Step  102 : it establishes a left viewpoint virtual view and a right viewpoint virtual view and obtains (u, v) to (u+1, v) pixel blocks for a pixel with a coordinate of (u, v) in a virtual viewpoint, that is, I(u)=[u, u+1). 
     It draws a virtual view for left and right viewpoints respectively, takes a pixel as a block with an area instead of a dot. In a virtual viewpoint, a pixel block with a coordinate of (u, v) refers to the portion between (u, v) and (u+1, v), which is defined as I(u)=[u, u+1). It searches for all pixels which are mapped to the virtual viewpoint and intersect with (u, v) in a reference viewpoint, that is, I(u)∩ I(u r +δ)≠Ø. 
     Step  104 : the left viewpoint virtual view searches for a candidate pixel in a left viewpoint reference view, the right viewpoint virtual view searches for a candidate pixel in a right viewpoint reference view, and a pixel block in which a candidate pixel is not found in the left viewpoint reference view and/or the right viewpoint reference view is marked as a hole point. 
     A virtual view from a left viewpoint only searches for a candidate pixel in a left view. If the candidate pixel is not found, the pixel is marked as a hole point. A virtual view from a right viewpoint only searches for a candidate pixel in a right view. If the candidate pixel is not found, the pixel is marked as a hole point. Therefore, a preliminary virtual view with the boundary region as the hole-point region can be obtained as shown in  FIGS. 2A and 2B . The hole-point region is just a portion where color mixing occurs easily in the original method. The hole-point region can be filled by information in a corresponding image. The hole-point region shown in  FIG. 2A  can be filled by  FIG. 2B . Thus, defects in the boundary region in the original method are avoided. 
     It searches for a candidate pixel in a reference view and sets a first adjustable parameter; when the first adjustable parameter is a preset initial value, 1 is added to the first adjustable parameter for a new search if a pixel block in which a candidate parameter isn&#39;t found; and, if the pixel block in which a candidate pixel is still not found, the pixel block is marked as a hole point. 
     As shown in  FIG. 3 , the candidate pixel set searched for (u, v) is {P 1 , P 2 , P 3 }. In addition, an adjustable parameter t is set. The definition of a pixel block in a reference viewpoint is represented as I(u r , t)=[u r −t, u r +1+t). The initial value of t is 0. When (u, v) in which a candidate pixel is not found, 1 is added to t for a new search. As for the (u′, v′) pixel shown in  FIGS. 2A and 2B , when t=0, the candidate pixel set is a null set; when t=1, the candidate pixel searched for it is {P 4 }; if the candidate pixel set is still not found, the search ends and it is marked as a hole-point region. 
     The hole-point region is just a portion where color mixing occurs easily. The hole-point region can be filled by information in a corresponding image. The hole-point region shown in  FIG. 2A  can be filled by  FIG. 2B . Thus, defects in the boundary region in the original method are avoided. In addition, during weighted summation, if the difference between the depth value of the current pixel and the depth value of the initial pixel (the first pixel in weighted summation), which are represented as a foreground and a background respectively, exceeds a certain threshold value, the pixels are not included in the weighted summation. Otherwise, a color mixing problem may also occur too. Mapping is performed on left and right viewpoints to obtain two virtual viewpoint images with hole points. 
     Step  106 : it ranks the found candidate pixels according to depth, successively calculates a foreground coefficient and a background coefficient, and performs weighted summation according to the foreground coefficient and the background coefficient. If the difference between the depth value of the current pixel and the depth value of the initial pixel in weighted summation exceeds the first predetermined threshold value, the pixels are not included in the weighted summation. 
     If the candidate pixel set C (u) is not a null set, the candidate pixels are ranked according to depth values from a small to a large, namely, according to their distances to a camera from a near to a far. The foreground coefficient w j   f  and background coefficient w j   b  of every pixel are calculated. The computing method is as follows:
 
Foreground Coefficient:  w   j   f   =|I   j ( u   r   ,t )∩ I   j ( u )|  (1),
 
in which, I j (u) represents the specific gravity which isn&#39;t covered by a previous pixel in a target pixel block. The computing method is as follows:
 
     
       
         
           
             
               
                 
                   
                     
                       I 
                       j 
                     
                     ⁡ 
                     
                       ( 
                       u 
                       ) 
                     
                   
                   = 
                   
                     { 
                     
                       
                         
                           
                             
                               I 
                               ⁡ 
                               
                                 ( 
                                 u 
                                 ) 
                               
                             
                           
                           
                             
                               
                                 if 
                                 ⁢ 
                                 
                                     
                                 
                                 ⁢ 
                                 j 
                               
                               = 
                               0 
                             
                           
                         
                         
                           
                             
                               
                                 
                                   I 
                                   
                                     j 
                                     - 
                                     1 
                                   
                                 
                                 ⁡ 
                                 
                                   ( 
                                   u 
                                   ) 
                                 
                               
                               ⁢ 
                               \ 
                               ⁢ 
                               
                                 { 
                                 
                                   
                                     
                                       I 
                                       
                                         j 
                                         - 
                                         1 
                                       
                                     
                                     ⁡ 
                                     
                                       ( 
                                       u 
                                       ) 
                                     
                                   
                                   ⋂ 
                                   
                                     
                                       I 
                                       
                                         j 
                                         - 
                                         1 
                                       
                                     
                                     ⁡ 
                                     
                                       ( 
                                       
                                         
                                           u 
                                           r 
                                         
                                         ⁢ 
                                         t 
                                       
                                       ) 
                                     
                                   
                                 
                                 } 
                               
                             
                           
                           
                             
                               
                                 if 
                                 ⁢ 
                                 
                                     
                                 
                                 ⁢ 
                                 j 
                               
                               &gt; 
                               0 
                             
                           
                         
                       
                       . 
                     
                   
                 
               
               
                 
                   ( 
                   2 
                   ) 
                 
               
             
           
         
       
     
     Then, the background coefficient is
 
 w   j   b   =|I ( u )∩ I   j ( u   r   ,t )|− w   j   f   (3).
 
     Then, the following formula is used to perform weighted summation on all candidate pixels: 
                           ⁢         Y   ⁢     (   u   )       =         ∑     j   =   1               ⁢          C   ⁡     (   u   )                ⁢       (       w   j   f     +       α   j     ×     w   j   b         )     ⁢     Y   ⁡     (   j   )               ∑     j   =   1               ⁢          C   ⁡     (   u   )                ⁢     (       w   j   f     +       α   j     ×     w   j   b         )           ,             (   4   )               
in which, α j  controls weights in a synthesis process according to depth values of pixels to improve accuracy. The computing formula is:
 
α j =1−( z   j   −z   1 )/ z   1   (5).
 
       FIG. 4  shows a weighted summation process of a candidate pixel set {P 1 , P 2 , P 3 } of the block (u, v) shown in  FIG. 3 . P 1 , P 2  and P 3  are ranked according to depth and the computation sequence is P 1 →P 2 →P 3 . Firstly, the foreground coefficient w 1,f  of P 1  is calculated and obtained from the overlapping portion of P 1  and the block (u, v). Then, P 2  is calculated and the overlapping portion of P 2  and the uncovered portion of the block (u, v) is w 2,f  as shown in the figure, namely the foreground coefficient of P 2 . Then, the overlapping portion of P 2  and (u, v) minus the foreground portion is the background coefficient w 2,b  of P 2 . Finally, since the foreground coefficients of P 1  and P 2  have covered the block (u, v) completely, the foreground coefficient of P 3  is 0. The overlapping portion of P 3  and the block (u, v) is all the background coefficient w 3,b  of P 3 . After foreground and background coefficients of all candidate pixels are figured out, the Formula (4) is used to perform weighted summation. 
     During weighted summation, if the difference between the depth value of the current pixel and the depth value of the initial pixel (the first pixel in weighted summation) exceeds a certain threshold value, the pixels are not included in the weighted summation. Mapping is performed on left and right viewpoints to obtain two virtual viewpoint images with hole points. A threshold value can be calculated by (minDepth+p*(maxDepth−minDepth)), in which, p is an empirical value which is a constant of 0.3&lt;p&lt;0.5. In the embodiment, p is 0.33. 
     Step  108 : it enlarges the hole-point regions of the left viewpoint virtual view and/or the right viewpoint virtual view in the direction of the background to remove a ghost pixel. 
     A ghost phenomenon comes from the discontinuity of depth images which makes the foreground boundary map to the background region and generates a ghost phenomenon. As shown in  FIGS. 5A and 5C , ghost pixels gather in the place where hole-point regions and backgrounds meet. Therefore, this step enlarges the hole-point region in the virtual viewpoint image with a hole point produced by the single viewpoint mapping module in the direction of the background to remove a ghost pixel and form a hole point. As shown in  FIGS. 5C and 5D , the corresponding pixel of another viewpoint is used for filling in the following step. 
     In this step, it can scan virtual viewpoint line by line; when it scans a hole point, it records the initial position of the hole point and then continues to scan the views towards the right to find the right boundary of the hole-point region; then, it separately chooses multiple pixels from the left and right boundaries outward in succession, and the number of chosen pixels can be set according to requirements. Generally, 3 to 8 pixels are chosen. In the embodiment, 5 pixels can be chosen, and the average depth values of pixels on the left side and the right side are calculated and recorded as d_left and d_right respectively. The difference value between d_left and d_right is calculated. The difference value between d_left and d_right is compared to the second predetermined threshold value to determine the enlarging direction of hole-point regions. The specific step is as follows: 
     It scans the left viewpoint and/or right viewpoint virtual views line by line; when it scans a hole point, it records the initial position of the hole point and then continues to scan the views towards the right to find the right boundary of the hole-point region; then, it separately chooses a predetermined amount of pixels from the left and right boundaries outward in succession, and calculates the average depth values of pixels which are respectively recorded as d_left and d_right; it calculates the difference value between d_left and d_right; and then it compares the difference value between d_left and d_right to the second predetermined threshold value to determine the enlarging direction of hole-point regions. The specific step is as follows:
         if d_left-d_right is greater than the second predetermined threshold value, the hole-point region is enlarged towards the left;   if d_left-d_right is less than the second predetermined threshold value, the hole-point region is enlarged towards the right; and   if d_left-d_right equals to the second predetermined threshold value, the hole-point region isn&#39;t enlarged.       

     The second predetermined threshold value is an empirical value which could range between 15 and 25. The second predetermined threshold value is 20 in the embodiment. 
     Step  110 : it performs viewpoint synthesis on the left viewpoint virtual view and the right viewpoint virtual view. The left and right viewpoints generate a virtual viewpoint image separately. The two virtual viewpoint images constitute an image. The method is to perform weighted summation according to distances between the virtual points and the right and left viewpoints. More specifically, there are three situations as follows:
         when the left viewpoint virtual view and the right viewpoint virtual view both have pixel values, weighted summation is performed according to distances between the virtual points and the right and left viewpoints;   when only one virtual image has a pixel value in the left viewpoint virtual view and the right viewpoint virtual view and the corresponding point of another virtual image is a hole point, it takes the pixel value directly; and   when the left viewpoint virtual view and the right viewpoint virtual view are both hole points, it retains the hole points.       

     Step  112 : it fills the hole-points of a composite image. 
     After the above steps are completed, some small hole points may still exist. This step is to fill all the hole points. Experimental results show that, generally, there are few hole points exist after the above steps are completed. Therefore, a simple background filling method is enough. A background estimation method is like a method to estimate whether the background is on the left side of the hole-point region or on the right side of the hole-point region. The difference is that it needs no threshold value and directly compares the value d_left to the value of d_right. When d_left&gt;d_right, the left side of the hole point is a background and the value of a pixel closest to the left side is used to fill the hole point; and, when d_left&lt;d_right, the value of a pixel closet to the right side is used to fill the hole point. 
     Through the step, a final virtual viewpoint image is obtained. 
       FIGS. 6A, 6B, and 6C  show experimental results of the VSRS viewpoint synthesis reference software of a virtual viewpoint synthesis method (Pixel-block Based View Synthesis, PBVS) provided by the invention and the viewpoint synthesis method IBIS put forward by Paradiso V, etc. (Paradiso V, Lucenteforte M, Grangetto M. A novel interpolation method for 3D view synthesis [C]//3DTV-Conference: The True Vision-Capture, Transmission and Display of 3D Video (3DTV-C0N), 2012. IEEE, 2012: 1-4.) in a newspaper sequence. The figure shows the synthesis result of a first frame.  FIG. 6A  shows an original view.  FIG. 6B  is an enlarged drawing of the block I framed in red in  FIG. 6A . From left to right are the original view, the VSRS synthesis result, the IBIS synthesis result and the PBVS synthesis result.  FIG. 6C  is an enlarged drawing of the block II framed in red in  FIG. 6A , whose sequence is the same with that of  FIG. 6B .  FIG. 6B  shows that a phenomenon of color mixing existing in foreground boundary regions (for example, leaves of a potted plant) by IBIS algorithm. However, the PBVS method provided by the invention has a good effect. The reason is that hole points are retained in boundary regions in single viewpoint mapping and high-quality corresponding pixels of a corresponding viewpoint are used to fill the hole points.  FIG. 6C  shows the PBVS method significantly improves the synthesis effect of wall parts. The synthesis results of the VSRS and IBIS methods show an unsmooth texture with many cracks. However, the synthesis result of the PBVS method shows a considerable smooth texture, which approaches the effect of an original image more. A single-way viewpoint mapping module contributes to the good result, which performs weighted summation on contributory reference pixels in a scientific way. 
       FIGS. 7A, 7B, 7C, and 7D  are curve diagrams of PSNR which shows synthesis results of three methods in newspaper, kendo, balloons and café sequences.  FIG. 7A  is a curve diagram of PSNR shows synthesis result in the newspaper sequence.  FIG. 7B  is a curve diagram of PSNR shows synthesis result in the kendo sequence.  FIG. 7C  is a curve diagram of PSNR shows synthesis result in the balloons sequence.  FIG. 7D  is a curve diagram of PSNR shows synthesis result in the café sequence. Table 1 shows description information of the four sequences. 
     
       
         
           
               
               
               
               
               
             
               
                 TABLE 1 
               
               
                   
               
               
                 Test 
                 Resolution 
                 Frame 
                 Reference 
                 Synthesis 
               
               
                 Sequence 
                 Ratio 
                 Number 
                 Viewpoint 
                 Viewpoint 
               
               
                   
               
             
            
               
                 Newspaper 
                 1024 * 768 
                 300 
                 2.4 
                 3 
               
               
                 Kendo 
                 1024 * 768 
                 300 
                 3.5 
                 4 
               
               
                 Balloons 
                 1024 * 768 
                 300 
                 3.5 
                 4 
               
               
                 Cafe 
                 1920 * 1080 
                 300 
                 2.4 
                 3 
               
               
                   
               
            
           
         
       
     
       FIG. 8  shows that the PBVS method is better than the VSRS method in newspaper, kendo and balloons sequences, similar in the café sequence in terms of synthesis result. However, synthesis results of the IBIS method fluctuate greatly. Table 2 shows average PSNR values of three methods in each sequence. 
     
       
         
           
               
               
               
               
               
             
               
                   
                 TABLE 2 
               
               
                   
                   
               
               
                   
                 Sequence/Algorithm 
                 VSRS 
                 IBIS 
                 PBVS 
               
               
                   
                   
               
             
            
               
                   
                 Newspaper 
                 29.828708 
                 30.175583 
                 30.263581 
               
               
                   
                 Kendo 
                 37.666434 
                 38.062545 
                 38.110075 
               
               
                   
                 Balloons 
                 36.627105 
                 37.023326 
                 36.839745 
               
               
                   
                 Cafe 
                 33.834154 
                 30.806064 
                 33.718762 
               
               
                   
                 Average 
                 34.489100 
                 34.013880 
                 34.733041 
               
               
                   
                   
               
            
           
         
       
     
       FIG. 9  shows a histogram of Average PSNR of three methods. 
     The synthesis quality of the VSRS method is relatively stable in different sequences. Compared to that of the VSRS method, the synthesis quality of the IBIS method is better in some sequences like kendo and balloons but lowers obviously in some sequences like café, particularly in boundary regions with greater color differences. Compared to the two methods, the PBVS method can realize a considerably ideal synthesis effect in all sequences, which improve synthesis quality of virtual viewpoints while guaranteeing stability.  FIG. 8  shows that, compared to the VSRS and IBIS methods, the PBVS method is obviously improved in term of average PSNR. 
     Example 2 
     As shown in  FIG. 9 , in an embodiment, a virtual viewpoint synthesis system of the invention comprises a viewpoint mapping module, a ghost pixel removal module, a viewpoint synthesis module and a small hole-filling module. The viewpoint mapping module comprises an establishment unit, a selection unit and a control unit. 
     The establishment unit is used to establish a left viewpoint virtual view and a right viewpoint virtual view. In a virtual viewpoint, it obtains (u, v) to (u+1, v) pixel blocks for a pixel with a coordinate of (u, v), that is, I(u)=[u, u+1). 
     The selection unit is used to search for a candidate pixel of the left viewpoint virtual view in the left viewpoint reference view and a candidate pixel of the right viewpoint virtual view in the right viewpoint reference view, and a pixel block in which a candidate pixel is not found in the left viewpoint virtual view and/or the right viewpoint virtual view is marked as a hole point. 
     The control unit ranks the found candidate pixels according to depth, successively calculates a foreground coefficient and a background coefficient and performs weighted summation according to the foreground coefficient and the background coefficient. If the difference between the depth value of the current pixel and the depth value of the initial pixel in weighted summation exceeds the first predetermined threshold value, the pixels are not included in the weighted summation. 
     The ghost pixel removal module is used to enlarge the hole-point regions of the left viewpoint virtual view and/or the right viewpoint virtual view in the direction of the background to remove a ghost pixel. 
     The viewpoint synthesis module is used to perform viewpoint synthesis on the left viewpoint virtual view and the right viewpoint virtual view. 
     The small hole-filling module is used to fill the hole-points of a composite image. 
     In an embodiment, the selection unit is also used to search for a candidate pixel in a reference view and set a first adjustable parameter. When the first adjustable parameter is a preset initial value, 1 is added to the first adjustable parameter for a new search if the pixel block of the candidate parameter is not found; and the pixel block is marked as a hole point if the pixel block of candidate pixels is still not found. 
     The foreground coefficient is calculated by w j   f =|I j  (u r , t)∩I j  (u)|, and the background coefficient is calculated by w j   b =|I(u)∩I j (u r , t)|−w j   f ; in which, I j  (u r , t)=[u r −t, u r +1+t) represents a pixel block in a reference viewpoint, t represents a second adjustable parameter, and I j  (u) represents the specific gravity which isn&#39;t covered by previous pixels in a pixel block of a virtual viewpoint: 
                 Y   ⁢     (   u   )       =         ∑     j   =   1               ⁢          C   ⁡     (   u   )                ⁢       (       w   j   f     +       α   j     ×     w   j   b         )     ⁢     Y   ⁡     (   j   )               ∑     j   =   1               ⁢          C   ⁡     (   u   )                ⁢     (       w   j   f     +       α   j     ×     w   j   b         )           ,         
in which, α j  controls weights in a synthesis process according to depth values of pixels.
 
     In an embodiment, the ghost pixel removal module is also used to scan the left viewpoint and/or right viewpoint virtual views line by line; when it scans a hole point, it records the initial position of the hole point and then continues to scan the views towards the right to find the right boundary of the hole-point region; then, it separately chooses a predetermined amount of pixels from the left and right boundaries outward in succession, and calculates the average depth values of pixels which are respectively recorded as d_left and d_right; it calculates the difference value between d_left and d_right; and then it compares the difference value between d_left and d_right to the second predetermined threshold value to determine the enlarging direction of hole-point regions:
         if d_left-d_right is greater than the second predetermined threshold value, the hole-point region is enlarged towards the left;   if d_left-d_right is less than the second predetermined threshold value, the hole-point region is enlarged towards the right; and   if d_left-d_right equals to the second predetermined threshold value, the hole-point region isn&#39;t enlarged.       

     In an embodiment, the viewpoint synthesis module is also used to perform weighted summation according to distances between the virtual points and the right and left viewpoints when the left viewpoint virtual view and the right viewpoint virtual view both have pixel values;
         when only one virtual image has a pixel value in the left viewpoint virtual view and the right viewpoint virtual view and the corresponding point of another virtual image is a hole point, it takes the pixel value directly; and   when the left viewpoint virtual view and the right viewpoint virtual view are both hole points, it retains the hole points.       

     The above content further explains the invention in detail with embodiments. The embodiments of the invention are not limited to these explanations. On the premise of adhering to the inventive concept of the invention, those skilled in the art can also make a plurality of simple deductions and replacements.