WO2021221250A1 - Electronic device for scaling image, and operating method therefor - Google Patents

Electronic device for scaling image, and operating method therefor Download PDF

Info

Publication number
WO2021221250A1
WO2021221250A1 PCT/KR2020/015426 KR2020015426W WO2021221250A1 WO 2021221250 A1 WO2021221250 A1 WO 2021221250A1 KR 2020015426 W KR2020015426 W KR 2020015426W WO 2021221250 A1 WO2021221250 A1 WO 2021221250A1
Authority
WO
WIPO (PCT)
Prior art keywords
image
pixel
kernel
pixels
value
Prior art date
Application number
PCT/KR2020/015426
Other languages
French (fr)
Korean (ko)
Inventor
안일준
이태미
Original Assignee
삼성전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자 주식회사 filed Critical 삼성전자 주식회사
Publication of WO2021221250A1 publication Critical patent/WO2021221250A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4046Scaling of whole images or parts thereof, e.g. expanding or contracting using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Definitions

  • the present disclosure relates to an electronic device for scaling an image and an operating method thereof.
  • a deconvolution layer may be used to generate an output image having a size different from that of an input image.
  • a first pixel of an output image in which the input image is scaled may be generated based on at least one pixel of the input image.
  • pixels of the input image used to generate each pixel of the output image may be determined based on positions of each pixel of the output image.
  • An object of the present disclosure is to solve the above problem, and to provide an electronic device for scaling an image and an operating method thereof.
  • Another object of the present invention is to provide a computer-readable recording medium in which a program for executing the method in a computer is recorded.
  • the technical problem to be solved is not limited to the technical problems as described above, and other technical problems may exist.
  • pixels of the input image suitable for generating the first pixel of the output image may be determined in consideration of the characteristics of each region of the input image.
  • FIG. 1 is a diagram illustrating a method of generating an image by using a deconvolution operation by an image processing apparatus according to an exemplary embodiment.
  • FIG. 2 is a diagram for explaining a case in which an image is upscaled by a non-integer multiple according to an embodiment.
  • FIG. 3 is a diagram for describing a method of determining a tendency of weights included in a scaling kernel applied to deconvolution for upscaling a first image according to an embodiment.
  • FIG. 4 is a diagram for describing a method of modeling a scaling kernel applied to deconvolution for upscaling a first image according to an embodiment.
  • FIG. 5 is a diagram illustrating deconvolution for upscaling a first image according to an exemplary embodiment.
  • FIG. 6 is a diagram for describing a process in which an image processing apparatus performs deconvolution to upscale a first image, according to an exemplary embodiment.
  • FIG. 7 is a diagram for explaining a method of generating transform characteristic information, according to an embodiment.
  • FIG. 8 is a block diagram illustrating an example of generating a second image by scaling a first image according to an embodiment.
  • FIG. 9 is a diagram illustrating an example of obtaining an offset and a compensation weight based on a first kernel and a second kernel according to an embodiment.
  • FIG. 10 is a diagram illustrating an example of obtaining an offset and a compensation weight based on a first kernel and a third kernel according to an embodiment.
  • FIG. 11 is a block diagram illustrating an internal configuration of an electronic device according to an exemplary embodiment.
  • FIG. 12 is a block diagram illustrating an internal configuration of an electronic device according to an exemplary embodiment.
  • FIG. 13 is a flowchart illustrating a method of scaling an image according to an embodiment.
  • a first aspect of the present disclosure is a method of generating a second image by scaling a first image in an electronic device, based on characteristics of each region of the first image determining a relative positional relationship between pixels included in the first image and pixels included in a second image; obtaining position transformation characteristic information based on the determined relative positional relationship and values of pixels included in the first image; and generating a second image in which the first image is scaled by performing a convolution operation between the position transformation feature information and a scaling kernel.
  • a second aspect of the present disclosure provides an electronic device for generating a second image by scaling a first image, comprising: a memory configured to store the first image; and a relative positional relationship between pixels included in the first image and pixels included in a second image is determined based on the characteristics of each region of the first image, and the determined relative positional relationship and At least one method for generating a second image in which the first image is scaled by obtaining position transformation characteristic information based on the values of included pixels and performing a convolution operation between the position transformation characteristic information and a scaling kernel
  • An electronic device including a processor may be provided.
  • a third aspect of the present disclosure may provide a recording medium in which a program for performing the method of the first aspect is stored.
  • FIG. 1 is a diagram illustrating a method of generating an image by using a deconvolution operation by an image processing apparatus according to an exemplary embodiment.
  • an electronic device 1000 may generate an image by using a neural network 30 .
  • the electronic device 1000 may use the neural network 30 to generate a second image 20, output, based on the first image 10, input.
  • the electronic device 1000 generates a second image 20 based on the first image 10 , and displays the generated second image 20 on a display included in the electronic device 1000 or It can be displayed on an external display device.
  • the electronic device 1000 may be implemented in various forms.
  • the electronic device 1000 described herein may include a digital camera, a smart phone, a laptop computer, a tablet PC, an electronic book terminal, a digital broadcasting terminal, and a personal digital assistant (PDA). , a Portable Multimedia Player (PMP), a navigation system, an MP3 player, a vehicle, and the like, but is not limited thereto.
  • PDA personal digital assistant
  • PMP Portable Multimedia Player
  • the electronic device 1000 described herein may be a wearable device that can be worn by a user.
  • Wearable devices include accessory type devices (e.g., watches, rings, wristbands, ankle bands, necklaces, eyeglasses, contact lenses), head-mounted-devices (HMDs), textile or clothing-integrated devices (e.g., electronic clothing), a body attachable device (eg, a skin pad), or a bioimplantable device (eg, an implantable circuit).
  • accessory type devices e.g., watches, rings, wristbands, ankle bands, necklaces, eyeglasses, contact lenses
  • HMDs head-mounted-devices
  • textile or clothing-integrated devices e.g., electronic clothing
  • a body attachable device eg, a skin pad
  • a bioimplantable device eg, an implantable circuit
  • the neural network 30 may include one or more deconvolution layers, and in each of the deconvolution layers, an image input to the deconvolution layer and a scaling kernel (Scaling) A deconvolution operation of the kernel) may be performed, and an output image may be generated as a result of the deconvolution operation.
  • scaling kernel Scaling
  • the deconvolution operation according to an embodiment is one of various types of convolution operations.
  • the scaling kernel may be a matrix including values previously learned in order to generate an output image based on an input image.
  • the scaling kernel may be various types of data from which an output image may be generated through a deconvolution operation with an input image.
  • the deconvolution operation may be used to upscale the input image 10 in a convolutional neural network (CNN), for example, super-resoultion It can be used in various fields such as image generation, auto-encoder, and style transfer. However, the present invention is not limited thereto.
  • CNN convolutional neural network
  • the size of the upscaled second image 20 (output) generated as a result of the deconvolution operation may be larger than the size of the first image 10 (input).
  • FIG. 2 is a diagram for explaining a case in which an image is upscaled by a non-integer multiple according to an embodiment.
  • a display on which an image is displayed may be configured in units of modules, and in this case, the size of the display may be variously determined according to a method of combining modules. For example, when the size of one module 201 is 9.8 inches and has a resolution of 480x270, the first display 210 having Ultra-HD (4K) resolution including 8x8 modules may be configured. Alternatively, the second display 220 having a resolution of 4320 x 2430 (eg, about 4.5K resolution) including 9 x 9 modules may be configured.
  • the electronic device 1000 may output an image having a 4K resolution to the first display 210 by up-scaling the image having the 4K resolution by 9/8 times to the second display 220 . can be printed on
  • FIG. 3 is a diagram for describing a method of determining a tendency of weights included in a scaling kernel applied to deconvolution for upscaling a first image according to an embodiment.
  • FIG. 3 illustrates a cubic B-spline interpolation method to find a tendency of weights applied to pixel values of a first image according to a pixel position of a second image when calculating a pixel value of a second image according to an embodiment
  • the first graph 310 is a pixel of the second image using four pixel values (x i-1 , x i , x i+1 , x i+2 ) of the first image.
  • curves B 0 (u), B 1 (u) indicating a weight applied to each of the four pixel values (x i-1 , x i , x i+1 , x i+2 ) ), B 2 (u), B 3 (u)).
  • the curves B 0 (u), B 1 (u), B 2 (u), and B 3 (u)) are cubic B spline curves, and as shown in FIG. 3 , B 0 (u) , B 1 (u), B 2 (u), and B 3 (u) appear as a function of u.
  • the meaning of the variable u will be described in detail below.
  • positions of pixels in the first image are expressed as integers
  • positions of pixels in the second image are expressed as integers.
  • the positions of the pixels of may be expressed as real numbers.
  • the value of the pixel y j included in the second image is discarded on j to determine the integer i, and four pixels among the pixels included in the first image are selected. It may be determined based on (x i-1 , x i , x i+1 , x i+2 ).
  • y j B 0 (u)*x i-1 +B 1 (u)*x i +B 2 (u)*x i+1 +B 3 (u)*x i+2
  • u is when the point corresponding to the pixel y j included in the second image is located between the pixels xi and xi+1 of the first image, assuming that the first image and the second image have the same size.
  • u can be expressed as the distance between the pixel xi and the point corresponding to the pixel y j . Accordingly, the value of u is greater than or equal to 0 and less than 1.
  • u may be expressed as a difference (ji) between a value (eg, an integer i) obtained by truncating j and j.
  • the curves B 0 (u), B 1 (u), B 2 (u), and B 3 (u)) may be represented by a matrix B(u), as shown in FIG. 4 .
  • Four pixels (x i-1 , x i , x i+1 , x i+2 ) of one image may be represented by a matrix I.
  • the value of the pixel y j may be determined by Equation 1 below.
  • the operation of symbols ⁇ A, B> F means a convolution operation. That is, it means an operation of summing values obtained by multiplying elements at the same position in matrix A and matrix B.
  • the matrix B of FIG. 3 applies B-cubic spline curves to find the tendency of weights applied to the input I, and the remaining parts 330 except for the matrix for u in the matrix B of FIG. 3 .
  • the coefficient (1/6) and the elements of the matrix B') can be determined to an appropriate value through training.
  • FIG. 4 is a diagram for describing a method of modeling a scaling kernel applied to deconvolution for upscaling a first image according to an embodiment.
  • the remaining parts 330 eg, coefficients (1/6) and elements of matrix B′
  • the matrix K of FIG. 4 represents a trainable scaling kernel applied to deconvolution for upscaling the first image, and may be expressed as a product of a trainable matrix ⁇ (410) and a matrix U.
  • the matrix K may be expressed as in Equation 2 below.
  • the matrix ⁇ and the matrix U may be respectively expressed as shown in FIG. 4 .
  • Equation 3 the deconvolution operation for upscaling the first image
  • the matrix I i represents pixel values of the first image, which are used to calculate a pixel value y j included in the second image.
  • the matrix U j is, the matrix ⁇ and, instead of being calculated, the matrix I i and the operation such that the position of the matrix U j can be changed.
  • the pixel value yj of the second image may be expressed as Equation 4 below.
  • Equation 4 The meaning of the parameters in Equation 4 will be described in detail below with reference to FIG. 5 .
  • FIG. 5 is a diagram illustrating deconvolution for upscaling a first image according to an exemplary embodiment.
  • x denotes a first image
  • y denotes a second image obtained by up-scaled by a non-integer multiple of x.
  • i is a value indicating the index of pixels included in the first image, and when x and y are represented by the same size and the distance between adjacent pixels included in the first image is 1, A value indicating the position of pixels. i may be expressed as an integer value of 0, 1, ..., n.
  • j is a value indicating indexes of pixels included in the second image, and is a value indicating positions of pixels included in the second image. When positions (eg, coordinates) of pixels of the first image are expressed as integers, positions (eg, coordinates) of pixels of the second image may be expressed as real numbers. Therefore, j can be expressed as a real value.
  • the value of the pixel (y j ) included in the second image may be expressed as ⁇ U j ⁇ I i T , ⁇ > F , where the matrix U j is expressed as a function for u j . and is determined according to the u j value.
  • the u j value is a value determined according to the relative distance between the pixel y j and the pixel x i of the first image, and the value of u j is 0 or more and less than 1.
  • the index i of the pixel x i is determined as a value obtained by performing a discard operation on the index j of the pixel y j .
  • the matrix Uj is determined differently depending on the index j of the pixel value yj to be calculated.
  • the matrix Ii is determined differently depending on the index j of y j .
  • the index i value is determined according to the index j
  • the matrix I 1 [x 0 , x 1 , x 2 , x 3 ] may be determined.
  • the matrix Ii may be configured differently according to the number of elements included in the matrix Ii.
  • the matrix ⁇ is a value determined by training, and may be equally applied regardless of the index j or u j of the pixel value y j to be calculated.
  • FIG. 6 is a diagram for describing a process in which an image processing apparatus performs deconvolution to upscale a first image, according to an exemplary embodiment.
  • the image processing apparatus 100 may determine a relative positional relationship between pixels included in the first image 610 and pixels included in the second image 620 and pixels included in the first image 610 . Based on the value, location transformation feature information 640 may be obtained.
  • the image processing apparatus 100 may generate the transformation characteristic information 630 using pixel values included in the first image.
  • the number of transformation feature information may be n, where n is equal to the number of pixels included in the first image used to calculate the value of one pixel included in the second image.
  • . 6 illustrates a case in which one pixel value of the second image is calculated using four pixel values included in the first image.
  • the transformation characteristic information 630 includes four transformation characteristic information (first transformation characteristic information (X k-1 ), second transformation characteristic information (X k ), and third transformation characteristic information (X)). k+1 ) and fourth transform characteristic information (X k+2 )). A method of generating the transform characteristic information 630 will be described in detail with reference to FIG. 7 .
  • FIG. 7 is a diagram for explaining a method of generating transform characteristic information, according to an embodiment.
  • the pixels of the first image 610 and the second image 620 have the same size and the distance between adjacent pixels included in the first image 610 is 1, the pixels of the first image
  • the positions of the pixels may be expressed as integers, and positions of pixels of the second image may be expressed as real numbers.
  • the transformation characteristic information 630 may be generated to have the same size as the second image 620 .
  • the size of the transform characteristic information may also be W x H.
  • Sample values included in each of the transformation characteristic information 630 may be determined based on a position (index) of a pixel of the second image 620 corresponding to each of the samples.
  • the first pixel 740 of the second image 620 may have a value of index j 0 , and a value k 0 obtained by performing a discard operation on j 0 may be determined.
  • the sample values S11 , S21 , S31 , and S41 of the position corresponding to the first pixel 740 are determined based on the value k 0 .
  • sample values included in the conversion characteristics each of information 630 may be determined according to d k0-1 , d k0 , d k0+1 , and d k0+2 .
  • the offset value may be determined by the number of pixels of the first image 610 used to generate one pixel of the second image 620 for each pixel of the first image 610 . . For example, when one pixel is generated in the second image 620 and four different pixels of the first image 610 are used, for each pixel of the first image 610, four pixels are generated. Each offset value may be determined.
  • the offset value according to an embodiment may be determined according to a result of performing a convolution operation between the first kernel and the first image 610 learned in advance to determine the offset value.
  • the first kernel according to an embodiment may be pre-learned so that a difference between the second image 620 generated by scaling the first image 610 using the first kernel and the second image set as a correct answer is minimized.
  • values corresponding to the feature information may be extracted for each region of the first image 610 . Accordingly, according to an embodiment, by performing a convolution operation between the first image 610 and the pre-learned first kernel, the offset value determined differently according to the characteristics of each region of the first image 610 is the first It may be determined for each pixel of the image.
  • sample values S11 , S21 , and S31 of a position corresponding to the first pixel 740 are determined.
  • S41 may be determined.
  • the first sample value S11 of the first transformation feature information 731 is the pixel value ( S11 ) of the first image having k 0 -1+d k0-1 as an index.
  • the second sample value S21 of the second transformation feature information 732 is the pixel value ( S21 ) of the first image having k 0 + d k0 as an index
  • the third sample value S31 of the third transformation feature information 733 is the pixel value ( S31 ) of the first image having k 0 +1+ d k0+1 as an index.
  • the fourth sample value S41 of the fourth transform characteristic information 734 is the pixel value ( S41 ) of the first image having k 0 +2+d k0+2 as an index. ) is determined by
  • the sample value is a pixel value of the first image corresponding to a value obtained by raising the index value to an integer value and a value rounded down by an integer value. According to a value after a decimal point of the index value, it may be determined as a sum of weighted values.
  • a sample value may be determined.
  • the value after the decimal point of 2.3 is 0.3, it is preferable that the sample value is determined as a value closer to the pixel value of index 2 among the pixel values of indexes 2 and 3. Accordingly, a value obtained by multiplying the pixel values of x(2) and x(3) by 0.7 and 0.3, respectively, that is, a value of x(2)*0.7+x(3)*0.3 may be determined as a sample value.
  • the electronic device 1000 after determining the index k 0 value of the reference pixel of the first image 610 at a position corresponding to the first pixel 740 of the second image 620 , the electronic device 1000 according to an embodiment , according to the offset values d k0-1 , d k0 , d k0+1 , d k0+2 with respect to the reference pixel k 0 , sample values S11 at positions corresponding to the first pixel 740 , S21, S31, S41) may be determined.
  • the pixel values of the first image which are each determined as the sample value, may be determined as the values of pixels located at regular intervals of one pixel, respectively.
  • pixel values of the first image determined as sample values may be determined as values of pixels located at various intervals.
  • offset values for pixel values included in a high-frequency region are used to generate one pixel of the second image 620 .
  • the block is formed.
  • an error in which the line area is blurred may be minimized.
  • offset values for pixel values included in a low-frequency region are used to generate one pixel of the second image 620 , It may be determined that an interval between pixels of the first image 610 is relatively wide.
  • the electronic device 1000 may acquire the first to fourth transformation characteristic information 731 , 732 , 733 , and 734 having the same size as the second image 620 in the same manner.
  • the image processing apparatus 100 multiplies the first to fourth transformation characteristic information 630 by u j 3 , u j 2 , u j 1 , and u j 0 , respectively, to obtain position transformation characteristic information.
  • 640 may be created.
  • the electronic device 1000 performs a convolution operation on the position transformation feature information 640 and the scaling kernel 650 , so that the first image 610 is upscaled by a non-integer multiple of the second image 620 . can be obtained.
  • the number of weights included in the scaling kernel may be determined based on the number n of pixels included in the first image used to calculate one pixel value included in the second image.
  • compensation weight values for each pixel of the first image 610 may be determined.
  • the same number of compensation weight values as the number of offset values determined for each pixel of the first image 610 may be determined, and the compensation weight values may be applied to weight values included in the scaling kernel 650 . have.
  • Compensating weight values according to an embodiment are to correct the scaling kernel 650 in consideration of that the pre-learned scaling kernel 650 is a kernel learned in a state in which the offset value according to the embodiment is not used. value for
  • Compensation weight values w k0-1 , w k0 , w k0+1 , w k0+2 are the same as the offset value, based on the characteristics of each region of the first image 610 . For each pixel of the first image 610 , the number of pixels of the first image 610 used to generate one pixel of the second image 620 may be determined. For example, when one pixel is generated in the second image 620 and four different pixels of the first image 610 are used, for each pixel of the first image 610, four pixels are generated. Compensation weight values may be determined respectively.
  • the compensation weight value according to an embodiment may be determined according to a result of performing a convolution operation between the second kernel learned in advance and the first image 610 to determine the compensation weight value.
  • the second kernel according to an embodiment uses the second kernel together with the first kernel, so that the difference between the second image 620 generated by scaling the first image 610 and the second image set as a correct answer is To be minimized, it can be learned in advance.
  • the compensation weight value according to an embodiment is based on a third kernel in which a convolution operation is performed with an offset value obtained by the first kernel instead of a convolution operation performed with the first image 610 .
  • the compensation weight value may be determined according to a result of performing a convolution operation between the third kernel learned in advance to determine the compensation weight value and the offset values.
  • the third kernel according to an embodiment uses the third kernel together with the first kernel, and the second image 620 generated by scaling the first image 610 and the It may be learned in advance so that the difference between the second images is minimized.
  • values corresponding to the feature information may be extracted for each region of the first image 610 .
  • the compensation weight value differently determined according to the characteristics of each region of the first image 610 is It may be determined for each pixel of one image.
  • the compensation weight is determined differently according to the characteristics of each region of the first image 610 .
  • a value may be determined for each pixel of the first image.
  • a convolution operation between the position transformation feature information 640 and the scaling kernel 650 may be performed.
  • Equation 5 the value of the pixel y j0 of the second image 620 that is upscaled by performing the deconvolution operation of FIG. 6 on the first image 610 may be expressed as Equation 5 below.
  • FIG. 8 is a block diagram illustrating an example of generating a second image 620 by scaling a first image 610 according to an embodiment.
  • the electronic device 1000 may generate the second image 620 by scaling the first image 610 in the scaling processor 810 .
  • the scaling processing unit 810 includes an offset obtaining unit 811 , an index determining unit 812 , a compensation weight obtaining unit 813 , and a convolution calculating unit 814 , including the first image 610 .
  • This scaled second image 620 may be generated.
  • the offset acquirer 811 may be configured to, for each pixel of the first image 610 , as many as the number of pixels of the first image 610 used to generate one pixel of the second image 620 . may determine the offset values of .
  • the offset acquirer 811 according to an embodiment may be configured to determine each pixel of the first image according to a result of performing a convolution operation between a pre-learned first kernel and the first image 610 to determine an offset value. It is possible to obtain an offset value for .
  • the index determiner 812 may include an index value (ie, the first pixel 740 ) of a reference pixel of the first image 610 corresponding to the first pixel 740 of the second image 610 .
  • the offset values (d k0-1 , d k0 , d k0+1 , d k0+2 ) are applied to the index (eg, the offset value is added to the index value)
  • index values for pixels of the first image 610 for determining sample values included in each of the transformation characteristic information 630 may be determined.
  • the first sample value S11 for the first transformation characteristic information 731 may be determined as a pixel value of the first image 610 having k 0 -1+d k0-1 as an index.
  • a sample value may be determined as a weighted sum between a plurality of pixel values of the first image 610 .
  • an interval between pixels of the first image 610 corresponding to sample values for generating one pixel of the second image 620 is a region characteristic of the first image 610 . It may be adaptively determined according to an offset value determined according to (eg. frequency characteristic).
  • the compensation weight acquirer 813 may generate the second image for each pixel of the first image 610 based on the characteristics of each region of the first image 610, identical to the offset value. Compensation weight values may be determined as many as the number of pixels of the first image 610 used to generate one pixel of 620 .
  • the compensation weight acquirer 813 may determine the compensation weight value according to a result of performing a convolution operation between the pre-learned second kernel and the first image 610 to determine the compensation weight value. can be obtained
  • the compensation weight acquirer 813 may perform a convolution operation between the offset values obtained by the third kernel and the first kernel learned in advance to determine the compensation weight value instead of the second kernel. According to the performed result, a compensation weight value may be obtained.
  • the compensation weight value obtained according to an embodiment is obtained by applying the compensation weight values to the weight values of the scaling kernel 650, and then, by the convolution operation unit 814, the position transformation feature information 640 and the scaling kernel 650 ) convolution operation can be performed.
  • FIG. 9 is a diagram illustrating an example of obtaining an offset and a compensation weight based on a first kernel and a second kernel according to an embodiment.
  • a convolution operation offset 910 is performed for the pixel (x i) of the index i of the pixel in the first image 610.
  • a convolution operation offset 910 is performed for the pixel (x i) with the first kernel Values d i-1 , d i , d i+1 , d i+2.
  • the first kernel according to an embodiment may be configured as a 3x3 matrix including values previously learned in order to obtain offset values for each pixel of the first image 610 .
  • the first kernel according to an embodiment may be pre-learned so that appropriate offset values may be output based on a characteristic (eg, a high-frequency region or a low-frequency region) of a region to which the pixel x i belongs.
  • the reference pixel of the first image 610 for the pixel y is x
  • the index values of the pixels of the first image 610 used to generate the pixel y are positions adjusted to offset values other than i-1, i, i+1, i+2, i It may be determined as -1+d i-1 , i+d i , i+1+d i+1 , i+2+d i+2 .
  • a pixel value of the second image 620 may be generated based on the pixel values of the first image 610 whose position is adjusted to .
  • a convolution operation 920 with a second kernel is performed on a pixel (x i ) of index i among pixels of the first image 610 , thereby compensating corresponding to the pixel (x i ).
  • Weight values w i-1 , w i , w i+1 , w i+2 may be obtained.
  • the second kernel according to an embodiment may be configured as a 3x3 matrix including values previously learned in order to obtain compensation weight values for each pixel of the first image 610 .
  • the second kernel according to an embodiment may be pre-learned so that appropriate compensation weight values may be output based on a characteristic (eg, a high-frequency region or a low-frequency region) of a region to which the pixel x i belongs.
  • Compensation weight values obtained based on the second kernel may be applied to weight values of the scaling kernel 940 used to obtain the pixel y of the second image 620 .
  • compensation weight values may be applied 930 to the pixels of the first image 610 to which the offset values are applied and corresponding components.
  • FIG. 10 is a diagram illustrating an example of obtaining an offset and a compensation weight based on a first kernel and a third kernel according to an embodiment.
  • the convolution operation 1010 with the first kernel is performed on the pixel (x i ) of index i among the pixels of the first image 610 .
  • offset values d i-1 , d i , d i+1 , d i+2 corresponding to the pixel x i may be obtained.
  • the offset values d i-1 , d i , d i+1 , d i+2 which are the results of the convolution operation 1010 with the first kernel
  • the third kernel By performing the convolution operation 1020 of , compensation weight values w' i-1 , w' i , w' i+1 , w' i+2 corresponding to the pixel x i may be obtained. .
  • the third kernel performs a convolution operation with the offset values d i-1 , d i , d i+1 , and d i+2 for each pixel of the first image 610 .
  • it may be configured as a 3x3 matrix including pre-learned values.
  • the offset values d i-1 , d i , d i+1 , d in which the characteristics of the region to which the pixel x i belongs are already considered. Based on i+2 ), it can be learned in advance so that suitable compensation weight values can be output.
  • Compensation weight values w i-1 , w i , w i+1 , w i+2 obtained based on the convolution operation 920 according to the second kernel of FIG. 9 and the third Compensation weight values w' i-1 , w' i , w' i+1 , w' i+2 obtained based on the convolution operation 1020 according to the kernel may correspond to each other.
  • the second kernel and the third kernel are different kernels learned so that an optimal second image 620 can be generated by scaling the first image 610 , so the compensation weight values w i-1 , w i , w i+1 , w i+2 ) and the compensation weight values (w' i-1 , w' i , w' i+1 , w' i+2 ) are substantially the same can
  • the above-described example is not limited, and compensation weight values applicable to each weight of the scaling kernel 1040 may be obtained based on a learned kernel according to various methods.
  • Compensation weight values obtained based on the third kernel may be applied to weight values of the scaling kernel 1040 used to obtain the pixel y of the second image 620 .
  • compensation weight values may be applied 1030 to the pixels of the first image 610 to which the offset values are applied and corresponding components.
  • FIG. 11 is a block diagram illustrating an internal configuration of the electronic device 1000 according to an embodiment.
  • FIG. 12 is a block diagram illustrating an internal configuration of the electronic device 1000 according to an embodiment.
  • the electronic device 1000 may include a processor 1300 and a memory 1700 . However, not all of the components shown in FIG. 11 are essential components of the electronic device 1000 .
  • the electronic device 1000 may be implemented by more components than those illustrated in FIG. 11 , or the electronic device 1000 may be implemented by fewer components than those illustrated in FIG. 11 .
  • the electronic device 1000 includes a user input unit 1100 and a sensing unit 1400 in addition to the control unit 1300 and the memory 1700 . ), an A/V input unit 1600 , a communication unit 1500 , and an output unit 1200 may be further included.
  • the user input unit 1100 means a means for a user to input data for controlling the electronic device 1000 .
  • the user input unit 1100 includes a key pad, a dome switch, and a touch pad (contact capacitive method, pressure resistance film method, infrared sensing method, surface ultrasonic conduction method, integral type).
  • a tension measurement method a piezo effect method, etc.
  • a jog wheel a jog switch, and the like, but is not limited thereto.
  • the user input unit 1100 may receive a user input for generating a second image by scaling the first image.
  • the output unit 1200 may output an audio signal, a video signal, or a vibration signal, and the output unit 1200 may include a display unit 1210 , a sound output unit 1220 , and a vibration motor 1230 . have.
  • the display unit 1210 displays and outputs information processed by the electronic device 1000 .
  • the display unit 1210 may display the second image generated by scaling the first image.
  • the display unit 1210 may be used as an input device in addition to an output device.
  • the display unit 1210 includes a liquid crystal display, a thin film transistor-liquid crystal display, an organic light-emitting diode, a flexible display, a three-dimensional display ( 3D display) and electrophoretic display (electrophoretic display) may include at least one. Also, depending on the implementation form of the electronic device 1000 , the electronic device 1000 may include two or more display units 1210 .
  • the sound output unit 1220 outputs audio data received from the communication unit 1500 or stored in the memory 1700 .
  • the vibration motor 1230 may output a vibration signal. Also, the vibration motor 1230 may output a vibration signal when a touch is input to the touch screen.
  • the sound output unit 1220 and the vibration motor 1230 may output information related to a result of scaling an image.
  • the processor 1300 generally controls the overall operation of the electronic device 1000 .
  • the processor 1300 executes programs stored in the memory 1700 , and thus the user input unit 1100 , the output unit 1200 , the sensing unit 1400 , the communication unit 1500 , and the A/V input unit 1600 . ) can be controlled in general.
  • the electronic device 1000 may include at least one processor 1300 .
  • the electronic device 1000 may include various types of processors, such as a central processing unit (CPU), a graphics processing unit (GPU), and a neural processing unit (NPU).
  • CPU central processing unit
  • GPU graphics processing unit
  • NPU neural processing unit
  • the processor 1300 may be configured to process instructions of a computer program by performing basic arithmetic, logic, and input/output operations.
  • the command may be provided to the processor 1300 from the memory 1700 or may be received through the communication unit 1500 and provided to the processor 1300 .
  • the processor 1300 may be configured to execute instructions according to program codes stored in a recording device such as a memory.
  • the processor 1300 may generate a second image in which the first image is a scaled image by performing a convolution operation between the position transformation feature information between the first image and the second image and the scaling kernel.
  • the position transformation characteristic information may be obtained based on values of pixels included in the first image and a relative positional relationship between pixels of the first image and pixels of the second image.
  • the relative positional relationship according to an embodiment may be determined based on a characteristic of each region of the first image. For example, the relative positional relationship may be obtained based on a result of performing a convolution operation between at least one pixel of the first image and the first kernel.
  • a relative positional relationship may be determined by identifying n pixels included in the first image with respect to the position of one pixel included in the second image based on the characteristics of each region of the first image. have. According to an embodiment, the n pixels may be used to obtain one pixel of the second image.
  • the n offset values may be obtained based on a convolution operation between at least one pixel of the first image including the pixel of the first image corresponding to k j and the first kernel.
  • the processor 1300 may identify n pixels to obtain the one pixel based on the n offset values. For example, a value obtained by adding n corresponding offset values to n index values (eg, k j -1, k j , k j +1, k j +2) determined based on k j is used as an index. , n pixels can be identified.
  • n index values eg, k j -1, k j , k j +1, k j +2
  • the scaling kernel also provides a compensation weight value obtained based on the characteristics of each region of the first image. can be corrected according to Since the scaling kernel according to an embodiment is a kernel learned in a state in which the offset value is not taken into consideration, it may be used to generate the second image after being corrected according to the compensation weight value.
  • the compensation weight value according to an embodiment is determined according to a result of performing a convolution operation between at least one pixel of the first image and the second kernel, or a result of the above-described convolution operation of the first kernel and the third It may be determined according to a result of performing a convolution operation with the kernel.
  • the processor 1300 may determine at least one compensation weight value to be applied to each weight value included in the scaling kernel, based on the characteristics of each region of the first image. For example, the compensation weight value may be obtained according to a result of a convolution operation performed by the second kernel or the third kernel.
  • the processor 1300 applies at least one compensation weight value to at least one weight value of the scaling kernel, and then, based on the scaling kernel to which the at least one compensation weight value is applied, the second image to which the first image is scaled. can create
  • the sensing unit 1400 may detect a state of the electronic device 1000 or a state around the electronic device 1000 , and transmit the sensed information to the processor 1300 .
  • the sensing unit 1400 includes a geomagnetic sensor 1410 , an acceleration sensor 1420 , a temperature/humidity sensor 1430 , an infrared sensor 1440 , a gyroscope sensor 1450 , and a position sensor. (eg, GPS) 1460 , a barometric pressure sensor 1470 , a proximity sensor 1480 , and at least one of an illuminance sensor 1490 , but is not limited thereto.
  • GPS GPS
  • the communication unit 1500 may include one or more components that allow the electronic device 1000 to communicate with the server 2000 or an external device (not shown).
  • the communication unit 1500 may include a short-range communication unit 1510 , a mobile communication unit 1520 , and a broadcast receiving unit 1530 .
  • Short-range wireless communication unit 1510 Bluetooth communication unit, BLE (Bluetooth Low Energy) communication unit, short-range wireless communication unit (Near Field Communication unit), WLAN (Wi-Fi) communication unit, Zigbee (Zigbee) communication unit, infrared ( It may include an IrDA, infrared Data Association) communication unit, a Wi-Fi Direct (WFD) communication unit, an ultra wideband (UWB) communication unit, an Ant+ communication unit, and the like, but is not limited thereto.
  • the mobile communication unit 1520 transmits/receives a radio signal to and from at least one of a base station, an external terminal, and a server on a mobile communication network.
  • the wireless signal may include various types of data according to transmission/reception of a voice call signal, a video call signal, or a text/multimedia message.
  • the broadcast receiver 1530 receives a broadcast signal and/or broadcast-related information from the outside through a broadcast channel.
  • the broadcast channel may include a satellite channel and a terrestrial channel.
  • the electronic device 1000 may not include the broadcast receiver 1530 .
  • the communication unit 1500 may transmit/receive data required for scaling an image.
  • the communication unit 1500 may receive a first image for scaling from the outside, or transmit a second image generated as a result of scaling the first image to the outside.
  • the A/V (Audio/Video) input unit 1600 is for inputting an audio signal or a video signal, and may include a camera 1610 , a microphone 1620 , and the like.
  • the camera 1610 may obtain an image frame such as a still image or a moving image through an image sensor in a video call mode or a shooting mode.
  • the image captured through the image sensor may be processed through the processor 1300 or a separate image processing unit (not shown).
  • the microphone 1620 receives an external sound signal and processes it as electrical voice data.
  • the memory 1700 may store a program for processing and control of the processor 1300 , and may also store data input to or output from the electronic device 1000 .
  • the memory 1700 may store data required to generate a second image by scaling the first image.
  • the memory 1700 may store a first image and kernels (eg, a scaling kernel, a first kernel, a second kernel, and a third kernel) necessary to generate a second image through a convolution operation.
  • kernels eg, a scaling kernel, a first kernel, a second kernel, and a third kernel
  • the memory 1700 may include a flash memory type, a hard disk type, a multimedia card micro type, a card type memory (eg, SD or XD memory), and a RAM.
  • RAM Random Access Memory
  • SRAM Static Random Access Memory
  • ROM Read-Only Memory
  • EEPROM Electrically Erasable Programmable Read-Only Memory
  • PROM Programmable Read-Only Memory
  • magnetic memory magnetic disk
  • magnetic disk may include at least one type of storage medium among optical disks.
  • Programs stored in the memory 1700 may be classified into a plurality of modules according to their functions, for example, may be classified into a UI module 1710 , a touch screen module 1720 , a notification module 1730 , and the like. .
  • the UI module 1710 may provide a specialized UI, GUI, or the like that interworks with the electronic device 1000 for each application.
  • the touch screen module 1720 may detect a touch gesture on the user's touch screen and transmit information about the touch gesture to the processor 1300 .
  • the touch screen module 1720 according to some embodiments may recognize and analyze a touch code.
  • the touch screen module 1720 may be configured as separate hardware including a controller.
  • a tactile sensor is an example of a sensor for detecting a touch of a touch screen.
  • a tactile sensor refers to a sensor that senses a touch of a specific object to the extent or higher than that felt by a human.
  • the tactile sensor may sense various information such as the roughness of the contact surface, the hardness of the contact object, and the temperature of the contact point.
  • the user's touch gesture may include a tap, touch & hold, double tap, drag, pan, flick, drag and drop, swipe, and the like.
  • the notification module 1730 may generate a signal for notifying the occurrence of an event in the electronic device 1000 .
  • FIG. 13 is a flowchart illustrating a method of scaling an image according to an embodiment.
  • the electronic device 1000 determines the relative positional relationship between pixels included in the first image and pixels included in the second image based on the characteristics of each region of the first image.
  • the characteristic for each region of the first image according to an embodiment may include, for example, a frequency characteristic for each region.
  • the relative positional relationship according to an embodiment may be determined based on a characteristic of each region of the first image. For example, the relative positional relationship may be obtained based on a result of performing a convolution operation between at least one pixel of the first image and the first kernel.
  • n pixels included in the first image with respect to the position of one pixel included in the second image are identified based on the characteristics (eg, frequency characteristics) of each region of the first image, A relative positional relationship may be determined. According to an embodiment, the n pixels may be used to obtain one pixel of the second image.
  • the electronic device 1000 may identify n pixels to obtain the one pixel based on the n offset values. For example, a value obtained by adding n corresponding offset values to n index values (eg, k j -1, k j , k j +1, k j +2) determined based on k j is used as an index. , n pixels can be identified.
  • n index values eg, k j -1, k j , k j +1, k j +2
  • the electronic device 1000 may obtain position transformation feature information based on a relative positional relationship and values of pixels included in the first image.
  • the location transformation characteristic information may include sample values used to generate each pixel of the second image.
  • the sample value according to an embodiment may be determined according to the pixel value of the index value of the first image corresponding to each pixel of the second image according to the relative positional relationship determined in operation 1310 .
  • the index value of the first image may be determined as a real value instead of an integer as an offset value is added.
  • the sample value may be determined as the sum of pixel values of the first image to which a weight is applied according to a value below a decimal point of the index value.
  • the electronic device 1000 may perform a convolution operation between the location transformation feature information and the scaling kernel to generate a second image in which the first image is scaled.
  • the scaling kernel also obtains a compensation weight value obtained based on the characteristic of each region of the first image.
  • a convolution operation with the position transformation feature information may be performed.
  • the compensation weight value according to an embodiment is determined according to a result of performing a convolution operation between at least one pixel of the first image and the second kernel, or a result of the above-described convolution operation of the first kernel and the third It may be determined according to a result of performing a convolution operation with the kernel.
  • the electronic device 1000 may determine at least one compensation weight value to be applied to each weight value included in the scaling kernel based on a characteristic (eg, a frequency characteristic) of each region of the first image. .
  • the compensation weight value may be obtained according to a result of a convolution operation performed by the second kernel or the third kernel.
  • the processor 1300 applies at least one compensation weight value to at least one weight value of the scaling kernel, and then, based on the scaling kernel to which the at least one compensation weight value is applied, the second image to which the first image is scaled. can create
  • pixels of the input image suitable for generating the first pixel of the output image may be determined in consideration of the characteristics of each region of the input image.
  • the device-readable storage medium may be provided in the form of a non-transitory storage medium.
  • 'non-transitory storage medium' is a tangible device and only means that it does not contain a signal (eg, electromagnetic wave). It does not distinguish the case where it is stored as
  • the 'non-transitory storage medium' may include a buffer in which data is temporarily stored.
  • the method according to various embodiments disclosed in this document may be provided as included in a computer program product.
  • Computer program products may be traded between sellers and buyers as commodities.
  • the computer program product is distributed in the form of a machine-readable storage medium (eg compact disc read only memory (CD-ROM)), or via an application store (eg Play Store TM ) or on two user devices ( It can be distributed (eg downloaded or uploaded) directly, online between smartphones (eg: smartphones).
  • a portion of a computer program product eg, a downloadable app
  • a machine-readable storage medium such as a memory of a manufacturer's server, a server of an application store, or a relay server. It may be temporarily stored or temporarily created.
  • unit may be a hardware component such as a processor or circuit, and/or a software component executed by a hardware component such as a processor.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Image Processing (AREA)

Abstract

Provided is a method by which an electronic device generates a second image by scaling a first image, the method determining, on the basis of each region-specific feature of the first image, the relative location relationship between pixels included in a first image and pixels included in a second image, acquiring location transform feature information on the basis of the relative location relationship and values of the pixels included in the first image, and performing a convolution calculation between the location transform feature information and a scaling kernel, thereby generating the second image acquired by scaling the first image.

Description

영상을 스케일링하는 전자 장치 및 그 동작 방법 Electronic device for scaling an image and method for operating the same
본 개시는, 영상을 스케일링하는 전자 장치 및 그 동작 방법에 관한 것이다.The present disclosure relates to an electronic device for scaling an image and an operating method thereof.
컨볼루션 뉴럴 네트워크(CNN: Convolution Neural Network) 등에서, 입력 영상의 크기와 다른 출력 영상을 생성하기 위해 디컨볼루션 레이어가 이용될 수 있다. In a convolutional neural network (CNN) or the like, a deconvolution layer may be used to generate an output image having a size different from that of an input image.
예를 들면, 입력 영상의 적어도 하나의 픽셀에 기초하여, 입력 영상이 스케일링된 출력 영상의 제1 픽셀이 생성될 수 있다. 또한, 출력 영상의 각 픽셀이 생성되는데 이용되는 입력 영상의 픽셀들은, 출력 영상의 각 픽셀의 위치에 기초하여, 결정될 수 있다.For example, a first pixel of an output image in which the input image is scaled may be generated based on at least one pixel of the input image. Also, pixels of the input image used to generate each pixel of the output image may be determined based on positions of each pixel of the output image.
그러나, 단순히, 출력 영상의 각 픽셀의 위치에 따라, 출력 영상의 각 픽셀이 생성되는데 이용되는 입력 영상의 픽셀이 결정되는 경우, 출력 영상의 각 픽셀이 생성되는데 적합하지 않은 입력 영상의 픽셀들이 이용되는 문제가 발생될 수 있다.However, when the pixel of the input image used to generate each pixel of the output image is determined simply according to the position of each pixel of the output image, pixels of the input image that are not suitable for generating each pixel of the output image are used. problems may arise.
본 개시가 해결하고자 하는 과제는 전술한 문제를 해결하기 위한 것으로서, 영상을 스케일링하는 전자 장치 및 그 동작 방법을 제공하기 위한 것이다. An object of the present disclosure is to solve the above problem, and to provide an electronic device for scaling an image and an operating method thereof.
또한, 상기 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하는 데 있다. 해결하려는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.Another object of the present invention is to provide a computer-readable recording medium in which a program for executing the method in a computer is recorded. The technical problem to be solved is not limited to the technical problems as described above, and other technical problems may exist.
일 실시 예에 의하면 입력 영상의 각 영역별 특징을 고려하여, 출력 영상의 제1 픽셀을 생성하는데 적합한, 입력 영상의 픽셀들이 결정될 수 있다.According to an embodiment, pixels of the input image suitable for generating the first pixel of the output image may be determined in consideration of the characteristics of each region of the input image.
도 1은 일 실시예에 따른 영상 처리 장치가 디컨볼루션 연산을 이용하여 영상을 생성하는 방법을 나타내는 도면이다.1 is a diagram illustrating a method of generating an image by using a deconvolution operation by an image processing apparatus according to an exemplary embodiment.
도 2는 일 실시예에 따라 영상을 비 정수 배 업 스케일하는 경우를 설명하기 위한 도면이다.2 is a diagram for explaining a case in which an image is upscaled by a non-integer multiple according to an embodiment.
도 3은 일 실시예에 따른 제1 영상을 업 스케일하기 위한 디컨볼루션에 적용되는 스케일링 커널에 포함되는 가중치들의 경향성을 결정하는 방법을 설명하기 위한 도면이다.3 is a diagram for describing a method of determining a tendency of weights included in a scaling kernel applied to deconvolution for upscaling a first image according to an embodiment.
도 4는 일 실시예에 따른 제1 영상을 업 스케일하기 위한 디컨볼루션에 적용되는 스케일링 커널을 모델링하는 방법을 설명하기 위한 도면이다.4 is a diagram for describing a method of modeling a scaling kernel applied to deconvolution for upscaling a first image according to an embodiment.
도 5는, 일 실시예에 따른 제1 영상을 업 스케일하기 위한 디컨볼루션을 나타내는 도면이다.5 is a diagram illustrating deconvolution for upscaling a first image according to an exemplary embodiment.
도 6은 일 실시예에 따른 영상 처리 장치가 제1 영상을 업 스케일하기 위해 디컨볼루션을 수행하는 과정을 설명하기 위한 도면이다.6 is a diagram for describing a process in which an image processing apparatus performs deconvolution to upscale a first image, according to an exemplary embodiment.
도 7은, 일 실시예에 따른, 변환 특징 정보들을 생성하는 방법을 설명하기 위한 도면이다.7 is a diagram for explaining a method of generating transform characteristic information, according to an embodiment.
도 8은 일 실시 예에 의한 제1 영상을 스케일링하여 제2 영상을 생성하는 일 예를 나타낸 블록도이다.8 is a block diagram illustrating an example of generating a second image by scaling a first image according to an embodiment.
도 9는 일 실시 예에 의한 제1 커널 및 제2 커널에 기초하여, 오프셋 및 보상 가중치를 획득하는 일 예를 나타낸 도면이다.9 is a diagram illustrating an example of obtaining an offset and a compensation weight based on a first kernel and a second kernel according to an embodiment.
도 10은 일 실시 예에 의한 제1 커널 및 제3 커널에 기초하여, 오프셋 및 보상 가중치를 획득하는 일 예를 나타낸 도면이다.10 is a diagram illustrating an example of obtaining an offset and a compensation weight based on a first kernel and a third kernel according to an embodiment.
도 11은 일 실시 예에 의한 전자 장치의 내부 구성을 설명하기 위한 블록도이다.11 is a block diagram illustrating an internal configuration of an electronic device according to an exemplary embodiment.
도 12는 일 실시 예에 의한 전자 장치의 내부 구성을 설명하기 위한 블록도이다.12 is a block diagram illustrating an internal configuration of an electronic device according to an exemplary embodiment.
도 13은 일 실시 예에 의한 영상을 스케일링하는 방법을 나타낸 순서도이다.13 is a flowchart illustrating a method of scaling an image according to an embodiment.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 개시의 제1 측면은, 전자 장치에서 제1 영상을 스케일링하여 제2 영상을 생성하는 방법에 있어서, 상기 제1 영상의 각 영역별 특징에 기초하여, 상기 제1 영상에 포함되는 픽셀들과 제2 영상에 포함되는 픽셀들의 상대적인 위치 관계를 결정하는 단계; 상기 결정된 상대적인 위치 관계 및 상기 제1 영상에 포함된 픽셀들의 값에 기초하여, 위치 변환 특징 정보를 획득하는 단계; 및 상기 위치 변환 특징 정보와 스케일링 커널과의 컨볼루션 연산을 수행함으로써, 상기 제1 영상을 스케일링한 제2 영상을 생성하는 단계를 포함하는, 방법을 제공할 수 있다.As a technical means for achieving the above technical problem, a first aspect of the present disclosure is a method of generating a second image by scaling a first image in an electronic device, based on characteristics of each region of the first image determining a relative positional relationship between pixels included in the first image and pixels included in a second image; obtaining position transformation characteristic information based on the determined relative positional relationship and values of pixels included in the first image; and generating a second image in which the first image is scaled by performing a convolution operation between the position transformation feature information and a scaling kernel.
또한, 본 개시의 제2 측면은, 제1 영상을 스케일링하여 제2 영상을 생성하는 전자 장치에 있어서, 상기 제1 영상을 저장하는 메모리; 및 상기 제1 영상의 각 영역별 특징에 기초하여, 상기 제1 영상에 포함되는 픽셀들과 제2 영상에 포함되는 픽셀들의 상대적인 위치 관계를 결정하고, 상기 결정된 상대적인 위치 관계 및 상기 제1 영상에 포함된 픽셀들의 값에 기초하여, 위치 변환 특징 정보를 획득하고, 상기 위치 변환 특징 정보와 스케일링 커널과의 컨볼루션 연산을 수행함으로써, 상기 제1 영상을 스케일링한 제2 영상을 생성하는 적어도 하나의 프로세서를 포함하는, 전자 장치를 제공할 수 있다.Also, a second aspect of the present disclosure provides an electronic device for generating a second image by scaling a first image, comprising: a memory configured to store the first image; and a relative positional relationship between pixels included in the first image and pixels included in a second image is determined based on the characteristics of each region of the first image, and the determined relative positional relationship and At least one method for generating a second image in which the first image is scaled by obtaining position transformation characteristic information based on the values of included pixels and performing a convolution operation between the position transformation characteristic information and a scaling kernel An electronic device including a processor may be provided.
또한, 본 개시의 제3 측면은, 제1 측면의 방법을 수행하도록 하는 프로그램이 저장된 기록매체를 제공할 수 있다.In addition, a third aspect of the present disclosure may provide a recording medium in which a program for performing the method of the first aspect is stored.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those of ordinary skill in the art can easily implement them. However, the present invention may be embodied in many different forms and is not limited to the embodiments described herein. And in order to clearly explain the present invention in the drawings, parts irrelevant to the description are omitted, and similar reference numerals are attached to similar parts throughout the specification.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.Throughout the specification, when a part is "connected" with another part, this includes not only the case of being "directly connected" but also the case of being "electrically connected" with another element interposed therebetween. . In addition, when a part "includes" a certain component, this means that other components may be further included rather than excluding other components unless otherwise stated.
이하 첨부된 도면을 참고하여 본 발명을 상세히 설명하기로 한다.Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.
도 1은 일 실시예에 따른 영상 처리 장치가 디컨볼루션 연산을 이용하여 영상을 생성하는 방법을 나타내는 도면이다.1 is a diagram illustrating a method of generating an image by using a deconvolution operation by an image processing apparatus according to an exemplary embodiment.
도 1을 참조하면, 일 실시예에 따른 전자 장치(1000)는 뉴럴 네트워크(Neural Network)(30)를 이용하여, 영상을 생성할 수 있다. 일 실시 예에 의한 전자 장치(1000)는 뉴럴 네트워크(30)를 이용하여, 제1 영상(10, input)에 기초하여, 제2 영상(20, output)을 생성할 수 있다.Referring to FIG. 1 , an electronic device 1000 according to an embodiment may generate an image by using a neural network 30 . The electronic device 1000 according to an embodiment may use the neural network 30 to generate a second image 20, output, based on the first image 10, input.
일 실시 예에 의한 전자 장치(1000)는, 제1 영상(10)에 기초하여 제2 영상(20)을 생성하고, 생성된 제2 영상(20)을 전자 장치(1000)에 포함된 디스플레이 또는 외부 디스플레이 장치에 표시할 수 있다.The electronic device 1000 according to an embodiment generates a second image 20 based on the first image 10 , and displays the generated second image 20 on a display included in the electronic device 1000 or It can be displayed on an external display device.
일 실시예에 따른 전자 장치(1000)는 다양한 형태로 구현될 수 있다. 예를 들어, 본 명세서에서 기술되는 전자 장치(1000)는, 디지털 카메라, 스마트 폰(smart phone), 노트북 컴퓨터(laptop computer), 태블릿 PC, 전자북 단말기, 디지털방송용 단말기, PDA(Personal Digital Assistants), PMP(Portable Multimedia Player), 네비게이션, MP3 플레이어, 차량(vehicle) 등이 있을 수 있으나, 이에 한정되는 것은 아니다. 본 명세서에서 기술되는 전자 장치(1000)는 사용자에 의해 착용될 수 있는 장치(wearable device)일 수 있다. 웨어러블 디바이스는 액세서리 형 장치(예컨대, 시계, 반지, 팔목 밴드, 발목 밴드, 목걸이, 안경, 콘택트 렌즈), 머리 착용형 장치(head-mounted-device(HMD)), 직물 또는 의류 일체형 장치(예: 전자 의복), 신체 부착형 장치(예컨대, 스킨 패드(skin pad)), 또는 생체 이식형 장치(예: implantable circuit) 중 적어도 하나를 포함할 수 있으나, 이에 한정되는 것은 아니다. The electronic device 1000 according to an embodiment may be implemented in various forms. For example, the electronic device 1000 described herein may include a digital camera, a smart phone, a laptop computer, a tablet PC, an electronic book terminal, a digital broadcasting terminal, and a personal digital assistant (PDA). , a Portable Multimedia Player (PMP), a navigation system, an MP3 player, a vehicle, and the like, but is not limited thereto. The electronic device 1000 described herein may be a wearable device that can be worn by a user. Wearable devices include accessory type devices (e.g., watches, rings, wristbands, ankle bands, necklaces, eyeglasses, contact lenses), head-mounted-devices (HMDs), textile or clothing-integrated devices (e.g., electronic clothing), a body attachable device (eg, a skin pad), or a bioimplantable device (eg, an implantable circuit).
일 실시 예에 의한 뉴럴 네트워크(30)는 하나 이상의 디컨볼루션(deconvolution) 레이어들을 포함할 수 있으며, 디컨볼루션 레이어들 각각에서는, 디컨볼루션 레이어에 입력된 영상(input)과 스케일링 커널(Scaling kernel)의 디컨볼루션(deconvolution) 연산을 수행할 수 있으며, 디컨볼루션 연산 결과, 출력 영상(output)을 생성할 수 있다.The neural network 30 according to an embodiment may include one or more deconvolution layers, and in each of the deconvolution layers, an image input to the deconvolution layer and a scaling kernel (Scaling) A deconvolution operation of the kernel) may be performed, and an output image may be generated as a result of the deconvolution operation.
일 실시 예에 의한 디컨볼루션 연산은, 다양한 유형의 컨볼루션 연산 중 하나이다.The deconvolution operation according to an embodiment is one of various types of convolution operations.
일 실시 예에 의한 스케일링 커널은, 입력 영상에 기초하여 출력 영상을 생성하기 위하여, 미리 학습된 값들을 포함하는 행렬일 수 있다. 상술한 예에 한하지 않고, 스케일링 커널은, 입력 영상과의 디컨볼루션 연산을 통해, 출력 영상이 생성될 수 있는, 다양한 형태의 데이터일 수 있다.The scaling kernel according to an embodiment may be a matrix including values previously learned in order to generate an output image based on an input image. Not limited to the above-described example, the scaling kernel may be various types of data from which an output image may be generated through a deconvolution operation with an input image.
일 실시 예에 의한 디컨볼루션 연산은, 컨볼루션 뉴럴 네트워크(CNN: Convolution Neural Network)에서, 입력 영상(10)을 업 스케일하기 위해 이용될 수 있으며, 예를 들어, 초 해상도(super-resoultion) 영상 생성, 자동-엔코더(auto-encoder), 스타일 변환(style transfer) 등 다양한 분야에 이용될 수 있다. 다만, 이에 한정되지 않는다.The deconvolution operation according to an embodiment may be used to upscale the input image 10 in a convolutional neural network (CNN), for example, super-resoultion It can be used in various fields such as image generation, auto-encoder, and style transfer. However, the present invention is not limited thereto.
일 실시 예에 따라, 디컨볼루션 연산 결과 생성된 업 스케일된 제2 영상(20, output)의 크기는 제1 영상(10, input)의 크기보다 클 수 있다.According to an embodiment, the size of the upscaled second image 20 (output) generated as a result of the deconvolution operation may be larger than the size of the first image 10 (input).
도 2는 일 실시예에 따라 영상을 비 정수 배 업 스케일하는 경우를 설명하기 위한 도면이다.2 is a diagram for explaining a case in which an image is upscaled by a non-integer multiple according to an embodiment.
도 2를 참조하면, 영상이 표시되는 디스플레이는 모듈 단위로 구성될 수 있으며, 이때, 모듈을 조합하는 방법에 따라 디스플레이의 크기가 다양하게 결정될 수 있다. 예를 들어, 모듈 하나(201)의 크기가 9.8인치, 480x270의 해상도를 가지는 경우, 8 x 8 모듈들을 포함하는 Ultra-HD(4K) 해상도를 가지는 제1 디스플레이(210)를 구성할 수 있다. 또는, 9 x 9 모듈들을 포함하는 4320 x 2430의 해상도(예를 들어, 약 4.5K 해상도)를 가지는 제2 디스플레이(220)를 구성할 수 있다.Referring to FIG. 2 , a display on which an image is displayed may be configured in units of modules, and in this case, the size of the display may be variously determined according to a method of combining modules. For example, when the size of one module 201 is 9.8 inches and has a resolution of 480x270, the first display 210 having Ultra-HD (4K) resolution including 8x8 modules may be configured. Alternatively, the second display 220 having a resolution of 4320 x 2430 (eg, about 4.5K resolution) including 9 x 9 modules may be configured.
일 실시 예에 따른 전자 장치(1000)는, 4K 해상도를 가지는 영상을 9/8배 업 스케일함으로써, 제1 디스플레이(210)에 출력할 수 있는, 4K 해상도를 가지는 영상을 제2 디스플레이(220)에 출력할 수 있다.The electronic device 1000 according to an embodiment may output an image having a 4K resolution to the first display 210 by up-scaling the image having the 4K resolution by 9/8 times to the second display 220 . can be printed on
도 3은 일 실시예에 따른 제1 영상을 업 스케일하기 위한 디컨볼루션에 적용되는 스케일링 커널에 포함되는 가중치들의 경향성을 결정하는 방법을 설명하기 위한 도면이다.3 is a diagram for describing a method of determining a tendency of weights included in a scaling kernel applied to deconvolution for upscaling a first image according to an embodiment.
도 3은 일 실시예에 따른 제2 영상의 픽셀 값을 계산할 때, 제2 영상의 픽셀의 위치에 따라, 제1 영상의 픽셀 값에 적용되는 가중치들의 경향성을 찾기 위하여, 큐빅 B-스플라인 보간법을 적용한 예를 나타낸다.3 illustrates a cubic B-spline interpolation method to find a tendency of weights applied to pixel values of a first image according to a pixel position of a second image when calculating a pixel value of a second image according to an embodiment; An example of application is shown.
도 3을 참조하면, 제1 그래프(310)는, 제1 영상의 4개의 픽셀 값들(x i-1, x i, x i+1, x i+2)을 이용하여, 제2 영상의 픽셀 값을 계산하는 경우에, 4개의 픽셀 값들(x i-1, x i, x i+1, x i+2) 각각에 적용되는 가중치를 나타내는 곡선들(B 0(u), B 1(u), B 2(u), B 3(u))을 포함한다. 이때, 곡선들(B 0(u), B 1(u), B 2(u), B 3(u))은, 큐빅 B 스플라인 곡선들이며, 도 3에 도시된 바와 같이, B 0(u), B 1(u), B 2(u), B 3(u)는 u에 대한 함수로 나타난다. 변수 u의 의미는 이하에서 자세히 설명하기로 한다.Referring to FIG. 3 , the first graph 310 is a pixel of the second image using four pixel values (x i-1 , x i , x i+1 , x i+2 ) of the first image. In the case of calculating the values , curves B 0 (u), B 1 (u) indicating a weight applied to each of the four pixel values (x i-1 , x i , x i+1 , x i+2 ) ), B 2 (u), B 3 (u)). At this time, the curves B 0 (u), B 1 (u), B 2 (u), and B 3 (u)) are cubic B spline curves, and as shown in FIG. 3 , B 0 (u) , B 1 (u), B 2 (u), and B 3 (u) appear as a function of u. The meaning of the variable u will be described in detail below.
예를 들어, 제1 영상과 제2 영상을 동일한 크기로 가정하고, 제1 영상에 포함되는 인접하는 픽셀들의 거리를 1로 하면, 제1 영상의 픽셀들의 위치는 정수로 표현되고, 제2 영상의 픽셀들의 위치는 실수로 표현될 수 있다. 예를 들어, 제1 영상의 픽셀들은, x i(i=0, 1, 2, 3,.., n)으로 표현될 수 있으며, 인덱스 i는 해당 픽셀의 좌표 값(위치)을 나타낼 수 있다. 제2 영상의 픽셀들은, y j(j = 실수)로 표현될 수 있으며, j는 해당 픽셀의 좌표 값(위치)을 나타낼 수 있다.For example, assuming that the first image and the second image have the same size and a distance between adjacent pixels included in the first image is 1, positions of pixels in the first image are expressed as integers, and the positions of pixels in the second image are expressed as integers. The positions of the pixels of may be expressed as real numbers. For example, pixels of the first image may be expressed as x i (i=0, 1, 2, 3,..., n), and index i may indicate a coordinate value (position) of the corresponding pixel. . Pixels of the second image may be expressed as y j (j = real number), where j may indicate a coordinate value (position) of the corresponding pixel.
한편, 도 3을 참조하면, 제2 영상에 포함되는 픽셀(y j)의 값은, j에 버림 연산을 수행하여, 정수 i를 결정하고, 제1 영상에 포함되는 픽셀들 중 4개의 픽셀들(x i-1, x i, x i+1, x i+2)에 기초하여, 결정될 수 있다.Meanwhile, referring to FIG. 3 , the value of the pixel y j included in the second image is discarded on j to determine the integer i, and four pixels among the pixels included in the first image are selected. It may be determined based on (x i-1 , x i , x i+1 , x i+2 ).
예를 들어, y j =B 0(u)*x i-1+B 1(u)*x i+B 2(u)*x i+1+B 3(u)*x i+2로 나타낼 수 있다. For example, y j =B 0 (u)*x i-1 +B 1 (u)*x i +B 2 (u)*x i+1 +B 3 (u)*x i+2 can
이때, u는 제1 영상과 제2 영상을 동일한 크기로 가정하였을 때, 제2 영상에 포함된 픽셀 y j에 대응하는 지점이, 제1 영상의 픽셀들 xi와 xi+1 사이에 위치할 때, 픽셀 xi와 픽셀 y j에 대응하는 지점 사이의 거리로 나타낼 수 있다. 이에 따라, u의 값은 0 이상 1미만이다. 도 3을 참조하면, u는 j를 버림한 값(예를 들어, 정수 i)과 j의 차이(j-i)로 표현될 수 있다. In this case, u is when the point corresponding to the pixel y j included in the second image is located between the pixels xi and xi+1 of the first image, assuming that the first image and the second image have the same size. , can be expressed as the distance between the pixel xi and the point corresponding to the pixel y j . Accordingly, the value of u is greater than or equal to 0 and less than 1. Referring to FIG. 3 , u may be expressed as a difference (ji) between a value (eg, an integer i) obtained by truncating j and j.
한편, 곡선들(B 0(u), B 1(u), B 2(u), B 3(u))은, 도 4에 도시된 바와 같이, 행렬 B(u)로 나타낼 수 있으며, 제1 영상의 4개의 픽셀들(x i-1, x i, x i+1, x i+2)은 행렬 I로 나타낼 수 있다. 이에 따라, 픽셀 y j의 값은 다음과 같은 수학식 1에 의해 결정될 수 있다.Meanwhile, the curves B 0 (u), B 1 (u), B 2 (u), and B 3 (u)) may be represented by a matrix B(u), as shown in FIG. 4 , Four pixels (x i-1 , x i , x i+1 , x i+2 ) of one image may be represented by a matrix I. Accordingly, the value of the pixel y j may be determined by Equation 1 below.
Figure PCTKR2020015426-appb-img-000001
Figure PCTKR2020015426-appb-img-000001
이때, 기호 <A, B> F의 연산은 컨볼루션 연산을 의미한다. 즉, 행렬 A와 행렬 B에서 동일한 위치의 원소들끼리 곱한 값들을 합하는 연산을 의미한다.In this case, the operation of symbols <A, B> F means a convolution operation. That is, it means an operation of summing values obtained by multiplying elements at the same position in matrix A and matrix B.
한편, 도 3의 행렬 B는, 입력 I에 적용되는 가중치들의 경향성을 찾기 위하여, B-큐빅 스플라인 곡선들을 적용한 것으로, 도 3의 행렬 B에서 u에 대한 행렬을 제외한 나머지 부분(330, 예를 들어, 계수(1/6)와 행렬 B'의 엘리먼트들)은 훈련을 통하여, 적절한 값으로 결정될 수 있다.On the other hand, the matrix B of FIG. 3 applies B-cubic spline curves to find the tendency of weights applied to the input I, and the remaining parts 330 except for the matrix for u in the matrix B of FIG. 3 . , the coefficient (1/6) and the elements of the matrix B') can be determined to an appropriate value through training.
도 4는 일 실시예에 따른 제1 영상을 업 스케일하기 위한 디컨볼루션에 적용되는 스케일링 커널을 모델링하는 방법을 설명하기 위한 도면이다.4 is a diagram for describing a method of modeling a scaling kernel applied to deconvolution for upscaling a first image according to an embodiment.
도 4를 참조하면, 도 3의 행렬 B에서 u에 대한 행렬을 제외한 나머지 부분(330, 예를 들어, 계수(1/6)와 행렬 B'의 엘리먼트들)은, 도 4에 도시된 바와 같이, 훈련 가능한 값인 θ ij로 표현되도록 모델링할 수 있다. 이에 따라, 도 4의 행렬 K는, 제1 영상을 업 스케일하기 위한 디컨볼루션에 적용되는 훈련 가능한 스케일링 커널을 나타내며, 훈련 가능한 행렬 θ(410)와 행렬 U의 곱으로 표현될 수 있다. 예를 들어, 행렬 K는 다음의 수학식 2와 같이 나타낼 수 있다.Referring to FIG. 4 , the remaining parts 330 (eg, coefficients (1/6) and elements of matrix B′) except for the matrix for u in the matrix B of FIG. 3 are as shown in FIG. 4 . , can be modeled to be expressed as a trainable value θ ij . Accordingly, the matrix K of FIG. 4 represents a trainable scaling kernel applied to deconvolution for upscaling the first image, and may be expressed as a product of a trainable matrix θ(410) and a matrix U. For example, the matrix K may be expressed as in Equation 2 below.
Figure PCTKR2020015426-appb-img-000002
Figure PCTKR2020015426-appb-img-000002
이때, 행렬 θ와 행렬 U는 각각 도 4에 도시된 바와 같이 표현될 수 있다.In this case, the matrix θ and the matrix U may be respectively expressed as shown in FIG. 4 .
또한, 제1 영상을 업 스케일하기 위한 디컨볼루션 연산은, 다음의 수학식 3과 같이 표현될 수 있다.Also, the deconvolution operation for upscaling the first image may be expressed as Equation 3 below.
Figure PCTKR2020015426-appb-img-000003
Figure PCTKR2020015426-appb-img-000003
수학식 3에서, 행렬 I i는 제2 영상에 포함되는 픽셀 값 y j를 계산하기 위해 이용되는, 제1 영상의 픽셀 값들을 나타낸다. 또한, 행렬 U j는, 행렬 θ와 연산되는 대신에, 행렬 I i와 연산되도록 행렬 U j의 위치가 변경될 수 있다.In Equation 3, the matrix I i represents pixel values of the first image, which are used to calculate a pixel value y j included in the second image. In addition, the matrix U j is, the matrix θ and, instead of being calculated, the matrix I i and the operation such that the position of the matrix U j can be changed.
이에 따라, 행렬 K j(=θU j)는 u j의 함수로 나타나는 행렬로, u j의 값에 따라 변하는(space-varient) 행렬이었으나, 행렬 θ는 u j의 값에 따라 변하지 않는(space-invarient) 행렬이 된다. 또한, 컨볼루션 연산에서 순서는 바뀔 수 있으므로, 제2 영상의 픽셀 값 yj는 다음의 수학식 4와 같이 나타낼 수 있다.Accordingly, the matrix K j (=θU j ) is a matrix expressed as a function of u j , which is a matrix that varies according to the value of u j , but the matrix θ does not change according to the value of u j (space-varient). invariant) matrix. Also, since the order may be changed in the convolution operation, the pixel value yj of the second image may be expressed as Equation 4 below.
Figure PCTKR2020015426-appb-img-000004
Figure PCTKR2020015426-appb-img-000004
수학식 4에서 파라미터들의 의미는, 이하, 도 5를 참조하여 자세히 설명하기로 한다.The meaning of the parameters in Equation 4 will be described in detail below with reference to FIG. 5 .
도 5는, 일 실시예에 따른 제1 영상을 업 스케일하기 위한 디컨볼루션을 나타내는 도면이다.5 is a diagram illustrating deconvolution for upscaling a first image according to an exemplary embodiment.
도 5를 참조하면, x는 제1 영상을 나타내며, y는 x를 비-정수 배 업 스케일한 제2 영상을 나타낸다. 또한, i는 제1 영상에 포함되는 픽셀들의 인덱스를 나타내는 값으로, x와 y를 동일한 크기로 나타내고, 제1 영상에 포함되는 인접하는 픽셀들 사이의 거리를 1로 하였을 때, x에 포함되는 픽셀들의 위치를 나타내는 값이다. i는 0, 1, ..., n의 정수 값으로 표현될 수 있다. 또한, j는 제2 영상에 포함되는 픽셀들의 인덱스를 나타내는 값으로, 제2 영상에 포함되는 픽셀들의 위치를 나타내는 값이다. 제1 영상의 픽셀들의 위치(예를 들어, 좌표)가 정수로 표현되면, 제2 영상의 픽셀들의 위치(예를 들어, 좌표)는 실수로 표현될 수 있다. 따라서, j는 실수 값으로 표현될 수 있다.Referring to FIG. 5 , x denotes a first image, and y denotes a second image obtained by up-scaled by a non-integer multiple of x. In addition, i is a value indicating the index of pixels included in the first image, and when x and y are represented by the same size and the distance between adjacent pixels included in the first image is 1, A value indicating the position of pixels. i may be expressed as an integer value of 0, 1, ..., n. Also, j is a value indicating indexes of pixels included in the second image, and is a value indicating positions of pixels included in the second image. When positions (eg, coordinates) of pixels of the first image are expressed as integers, positions (eg, coordinates) of pixels of the second image may be expressed as real numbers. Therefore, j can be expressed as a real value.
도 4에서 설명한 바와 같이, 제2 영상에 포함되는 픽셀(y j)의 값은 <U j·I i T, Θ> F로 나타낼 수 있으며, 이때, 행렬 U j는 u j에 대한 함수로 표현되며, u j값에 따라 결정된다. 이때, u j값은 픽셀 y j와 제1 영상의 픽셀 x i의 상대적인 거리에 따라, 결정되는 값이며, u j의 값은 0 이상 1 미만이다. 또한, 픽셀 x i의 인덱스 i 는, 픽셀 y j의 인덱스 j에 버림 연산을 수행한 값으로 결정된다. As described in FIG. 4 , the value of the pixel (y j ) included in the second image may be expressed as <U j ·I i T , Θ> F , where the matrix U j is expressed as a function for u j . and is determined according to the u j value. In this case, the u j value is a value determined according to the relative distance between the pixel y j and the pixel x i of the first image, and the value of u j is 0 or more and less than 1. In addition, the index i of the pixel x i is determined as a value obtained by performing a discard operation on the index j of the pixel y j .
예를 들어, 픽셀 y 1.2 의 값을 구하는 경우, j는 1.2이므로, 1.2에 버림 연산을 수행한 값 1이 i값이 되며, x i는 x 1이 된다. 또한, u 1.2는 0.2가 된다. 따라서, 행렬 Uj는 계산하고자 하는 픽셀 값 yj의 인덱스 j에 따라 다르게 결정된다.For example, when the value of pixel y 1.2 is obtained, j is 1.2, so the value 1 obtained by performing the rounding operation on 1.2 becomes the value i, and x i becomes x 1 . Also, u 1.2 becomes 0.2. Accordingly, the matrix Uj is determined differently depending on the index j of the pixel value yj to be calculated.
또한, 행렬 Ii도 y j의 인덱스 j에 따라 다르게 결정된다. 예를 들어, 인덱스 j에 따라 인덱스 i 값이 결정되며, 인덱스 i에 따라, 행렬 Ii=[x i-1, x i, x i+1, x i+2]가 결정된다. 예를 들어, 인덱스 j가 1.2이고 인덱스 i가 1인 경우, 행렬 I 1=[x 0, x 1, x 2, x 3]으로 결정될 수 있다. 다만, 행렬 Ii에 포함되는 엘리먼트들의 개수에 따라 행렬 Ii는 다르게 구성될 수 있다.Also, the matrix Ii is determined differently depending on the index j of y j . For example, the index i value is determined according to the index j, and the matrix Ii=[x i-1 , x i , x i+1 , x i+2 ] is determined according to the index i. For example, when the index j is 1.2 and the index i is 1, the matrix I 1 =[x 0 , x 1 , x 2 , x 3 ] may be determined. However, the matrix Ii may be configured differently according to the number of elements included in the matrix Ii.
한편, 행렬 Θ는 훈련에 의해 결정되는 값으로, 계산하고자 하는 픽셀 값 y j의 인덱스 j 또는, u j와 상관없이 동일하게 적용될 수 있다.Meanwhile, the matrix Θ is a value determined by training, and may be equally applied regardless of the index j or u j of the pixel value y j to be calculated.
도 6은 일 실시예에 따른 영상 처리 장치가 제1 영상을 업 스케일하기 위해 디컨볼루션을 수행하는 과정을 설명하기 위한 도면이다.6 is a diagram for describing a process in which an image processing apparatus performs deconvolution to upscale a first image, according to an exemplary embodiment.
일 실시예에 따른 영상 처리 장치(100)는 제1 영상(610)에 포함되는 픽셀들과 제2 영상(620)에 포함되는 픽셀들의 상대적인 위치 관계 및 제1 영상(610)에 포함되는 픽셀들의 값에 기초하여, 위치 변환 특징 정보들(640)을 획득할 수 있다.The image processing apparatus 100 according to an exemplary embodiment may determine a relative positional relationship between pixels included in the first image 610 and pixels included in the second image 620 and pixels included in the first image 610 . Based on the value, location transformation feature information 640 may be obtained.
예를 들어, 영상 처리 장치(100)는 제1 영상에 포함되는 픽셀 값들을 이용하여, 변환 특징 정보들(630)을 생성할 수 있다. 도 6에 도시된 바와 같이, 변환 특징 정보들은 n개일 수 있으며, 이때, n은, 제2 영상에 포함되는 하나의 픽셀 값을 계산하기 위해 이용되는 제1 영상에 포함되는 픽셀들의 개수와 동일하다. 도 6에서는, 제1 영상에 포함되는 4개의 픽셀 값들을 이용하여, 제2 영상의 하나의 픽셀 값을 계산하는 경우를 도시한다.For example, the image processing apparatus 100 may generate the transformation characteristic information 630 using pixel values included in the first image. As shown in FIG. 6 , the number of transformation feature information may be n, where n is equal to the number of pixels included in the first image used to calculate the value of one pixel included in the second image. . 6 illustrates a case in which one pixel value of the second image is calculated using four pixel values included in the first image.
일 실시예에 따른 변환 특징 정보들(630)은, 4개의 변환 특징 정보들(제1 변환 특징 정보(X k-1), 제2 변환 특징 정보(X k), 제3 변환 특징 정보(X k+1) 및 제4 변환 특징 정보(X k+2))을 포함할 수 있다. 변환 특징 정보들(630)을 생성하는 방법에 대해서는 도 7을 참조하여, 자세히 설명하기로 한다.The transformation characteristic information 630 according to an embodiment includes four transformation characteristic information (first transformation characteristic information (X k-1 ), second transformation characteristic information (X k ), and third transformation characteristic information (X)). k+1 ) and fourth transform characteristic information (X k+2 )). A method of generating the transform characteristic information 630 will be described in detail with reference to FIG. 7 .
도 7은, 일 실시예에 따른, 변환 특징 정보들을 생성하는 방법을 설명하기 위한 도면이다.7 is a diagram for explaining a method of generating transform characteristic information, according to an embodiment.
도 7을 참조하면, 제1 영상(610)과 제2 영상(620)을 동일한 크기로 가정하고, 제1 영상(610)에 포함되는 인접하는 픽셀들의 거리를 1로 하면, 제1 영상의 픽셀들의 위치는 정수로 표현되고, 제2 영상의 픽셀들의 위치는 실수로 표현될 수 있다. 예를 들어, 제1 영상(610)의 픽셀들은, x i(i=0, 1, 2, 3,.., n)으로 표현될 수 있으며, 인덱스 i는 해당 픽셀의 좌표 값(위치)을 나타낼 수 있다. 제2 영상의 픽셀들은, y j(j = j0, j1, j2,..., jm, j는 실수)로 표현될 수 있으며, j는 해당 픽셀의 좌표 값(위치)을 나타낼 수 있다. 또한, 제1 영상에 포함되는 픽셀 값은 x i= x 0, x 1, x 2,..., x n으로 나타낼 수 있으며, 제2 영상에 포함되는 픽셀 값은 y j=y j0, y j1, y j2,..., y jm으로 나타낼 수 있다.Referring to FIG. 7 , assuming that the first image 610 and the second image 620 have the same size and the distance between adjacent pixels included in the first image 610 is 1, the pixels of the first image The positions of the pixels may be expressed as integers, and positions of pixels of the second image may be expressed as real numbers. For example, the pixels of the first image 610 may be expressed as x i (i=0, 1, 2, 3,..., n), and the index i represents the coordinate value (position) of the pixel. can indicate Pixels of the second image may be expressed as y j (j = j0, j1, j2, ..., jm, j are real numbers), and j may represent a coordinate value (position) of the corresponding pixel. Also, pixel values included in the first image may be expressed as x i = x 0 , x 1 , x 2 ,..., x n , and pixel values included in the second image are y j =y j0 , y It can be expressed as j1 , y j2 ,..., y jm .
일 실시 예에 의한 변환 특징 정보들(630)은, 제2 영상(620)과 동일한 크기를 가지도록 생성될 수 있다. 예를 들어, 제2 영상의 크기가 W X H이면, 변환 특징 정보들의 크기도 W x H일 수 있다.The transformation characteristic information 630 according to an embodiment may be generated to have the same size as the second image 620 . For example, if the size of the second image is W X H, the size of the transform characteristic information may also be W x H.
일 실시 예에 의한 변환 특징 정보들(630) 각각에 포함되는 샘플 값들은, 샘플들 각각에 대응하는 제2 영상(620)의 픽셀의 위치(인덱스)에 기초하여 결정될 수 있다. 예를 들어, 제2 영상(620)의 제1 픽셀(740)은 인덱스 j 0 값을 가지며, j 0에 버림 연산을 수행한 값 k 0를 결정할 수 있다. 따라서, 제1 픽셀(740)에 대응하는 위치의 샘플 값들(S11, S21, S31, S41)은, k 0 값에 기초하여 결정된다.Sample values included in each of the transformation characteristic information 630 according to an embodiment may be determined based on a position (index) of a pixel of the second image 620 corresponding to each of the samples. For example, the first pixel 740 of the second image 620 may have a value of index j 0 , and a value k 0 obtained by performing a discard operation on j 0 may be determined. Accordingly, the sample values S11 , S21 , S31 , and S41 of the position corresponding to the first pixel 740 are determined based on the value k 0 .
또한, 일 실시 예에 의한 변환 특징 정보(630) 각각에 포함되는 샘플 값들은, 상기 결정된 k 0에 더해, 제1 영상(610)의 각 영역별 특징에 기초하여, 결정된 적어도 하나의 오프셋 값(d k0-1, d k0, d k0+1, d k0+2)에 따라, 제1 픽셀(740)에 대응하는 위치의 샘플 값들(S11, S21, S31, S41)이 결정될 수 있다.Further, the sample values included in the conversion characteristics each of information 630 according to one embodiments, the determined addition to k 0, first on the basis of each section characterized in the first image 610, the determined at least one offset value ( Sample values S11 , S21 , S31 , and S41 of positions corresponding to the first pixel 740 may be determined according to d k0-1 , d k0 , d k0+1 , and d k0+2 .
일 실시 예에 의한 오프셋 값은, 제1 영상(610)의 각 픽셀에 대하여, 제2 영상(620)의 하나의 픽셀이 생성되는데 이용되는 제1 영상(610)의 픽셀 개수만큼, 결정될 수 있다. 예를 들어, 제2 영상(620)에서 하나의 픽셀이 생성되는데, 4개의 제1 영상(610)의 서로 다른 픽셀이 이용되는 경우, 제1 영상(610)의 각각의 픽셀에 대해, 4개의 오프셋 값이 각각 결정될 수 있다.The offset value according to an embodiment may be determined by the number of pixels of the first image 610 used to generate one pixel of the second image 620 for each pixel of the first image 610 . . For example, when one pixel is generated in the second image 620 and four different pixels of the first image 610 are used, for each pixel of the first image 610, four pixels are generated. Each offset value may be determined.
일 실시 예에 의한 오프셋 값은, 오프셋 값을 결정하기 위하여 미리 학습된 제1 커널과, 제1 영상(610)간 컨볼루션 연산이 수행된 결과에 따라서, 결정될 수 있다. 일 실시 예에 의한 제1 커널은, 제1 커널을 이용하여 제1 영상(610)이 스케일링됨으로써 생성된 제2 영상(620)과, 정답으로 설정된 제2 영상 간의 차이가 최소화되도록, 미리 학습될 수 있다.The offset value according to an embodiment may be determined according to a result of performing a convolution operation between the first kernel and the first image 610 learned in advance to determine the offset value. The first kernel according to an embodiment may be pre-learned so that a difference between the second image 620 generated by scaling the first image 610 using the first kernel and the second image set as a correct answer is minimized. can
일 실시 예에 의한 컨볼루션 연산에 의하면, 제1 영상(610)의 영역별로 특징 정보에 대응한 값들이 추출될 수 있다. 따라서, 일 실시 예에 의하면, 제1 영상(610)과 미리 학습된 제1 커널 간 컨볼루션 연산이 수행됨으로써, 제1 영상(610)의 각 영역별 특징에 따라 다르게 결정된 오프셋 값이, 제1 영상의 각각의 픽셀에 대하여 결정될 수 있다. According to the convolution operation according to an embodiment, values corresponding to the feature information may be extracted for each region of the first image 610 . Accordingly, according to an embodiment, by performing a convolution operation between the first image 610 and the pre-learned first kernel, the offset value determined differently according to the characteristics of each region of the first image 610 is the first It may be determined for each pixel of the image.
일 실시 예에 의하면, k 0 값에 오프셋 값이 더해진 값을 제1 영상(610) 픽셀에 대한 인덱스 값으로 결정함으로써, 제1 픽셀(740)에 대응하는 위치의 샘플 값들(S11, S21, S31, S41)이 결정될 수 있다.According to an embodiment, by determining a value obtained by adding an offset value to a value of k 0 as an index value for a pixel of the first image 610 , sample values S11 , S21 , and S31 of a position corresponding to the first pixel 740 are determined. , S41) may be determined.
예를 들어, 제1 변환 특징 정보(731)의 제1 샘플 값(S11)은, k 0-1+d k0-1를 인덱스로 가지는 제1 영상의 픽셀 값(
Figure PCTKR2020015426-appb-img-000005
)으로 결정되고, 제2 변환 특징 정보(732)의 제2 샘플 값(S21)은 k 0+d k0을 인덱스로 가지는 제1 영상의 픽셀 값(
Figure PCTKR2020015426-appb-img-000006
)으로 결정되며, 제3 변환 특징 정보(733)의 제3 샘플 값(S31)은 k 0+1+ d k0+1을 인덱스로 가지는 제1 영상의 픽셀 값(
Figure PCTKR2020015426-appb-img-000007
)으로 결정되고, 제4 변환 특징 정보(734)의 제4 샘플 값(S41)은 k 0+2+d k0+2를 인덱스로 가지는 제1 영상의 픽셀 값(
Figure PCTKR2020015426-appb-img-000008
)으로 결정된다.
For example, the first sample value S11 of the first transformation feature information 731 is the pixel value ( S11 ) of the first image having k 0 -1+d k0-1 as an index.
Figure PCTKR2020015426-appb-img-000005
), and the second sample value S21 of the second transformation feature information 732 is the pixel value ( S21 ) of the first image having k 0 + d k0 as an index
Figure PCTKR2020015426-appb-img-000006
), and the third sample value S31 of the third transformation feature information 733 is the pixel value ( S31 ) of the first image having k 0 +1+ d k0+1 as an index.
Figure PCTKR2020015426-appb-img-000007
), and the fourth sample value S41 of the fourth transform characteristic information 734 is the pixel value ( S41 ) of the first image having k 0 +2+d k0+2 as an index.
Figure PCTKR2020015426-appb-img-000008
) is determined by
일 실시 예에 따라 오프셋 값이 적용된 인덱스 값이, 정수값이 아닌 경우, 샘플 값은, 상기 인덱스 값을 정수 값으로 올림한 값 및 내림한 값과 각각 대응되는 제1 영상의 픽셀 값들에, 상기 인덱스 값의 소수점 이하의 값에 따라서, 가중치가 적용된 값들의 합으로 결정될 수 있다. According to an embodiment, when the index value to which the offset value is applied is not an integer value, the sample value is a pixel value of the first image corresponding to a value obtained by raising the index value to an integer value and a value rounded down by an integer value. According to a value after a decimal point of the index value, it may be determined as a sum of weighted values.
예를 들어, 오프셋 값이 적용된 인덱스 값이 2.3인 경우, 2.3을 정수 값으로 올림 및 내림한 값인, 2와 3을 인덱스 값으로 가지는 제1 영상의 픽셀 값들인, x(2) 및 x(3)의 픽셀 값에 기초하여, 샘플 값이 결정될 수 있다. 또한, 2.3의 소수점 이하의 값이 0.3이므로, 인덱스 2 및 3의 픽셀 값 중 인덱스 2의 픽셀값에 더 가까운 값으로 샘플값이 결정됨이 바람직하다. 따라서, x(2) 및 x(3)의 픽셀 값에 각각 0.7 및 0.3을 곱하여 더한 값, 즉, x(2)*0.7+x(3)*0.3 값이 샘플값으로 결정될 수 있다. For example, when the index value to which the offset value is applied is 2.3, x(2) and x(3), which are pixel values of the first image having 2 and 3 as index values, which are values obtained by rounding up and rounding down 2.3 to integer values. ), a sample value may be determined. In addition, since the value after the decimal point of 2.3 is 0.3, it is preferable that the sample value is determined as a value closer to the pixel value of index 2 among the pixel values of indexes 2 and 3. Accordingly, a value obtained by multiplying the pixel values of x(2) and x(3) by 0.7 and 0.3, respectively, that is, a value of x(2)*0.7+x(3)*0.3 may be determined as a sample value.
따라서, 일 실시 예에 의한 전자 장치(1000)는, 제2 영상(620)의 제1 픽셀(740)에 대응하는 위치의, 제1 영상(610)의 기준 픽셀의 인덱스 k 0 값을 결정한 후, 상기 기준 픽셀(k 0)에 대한 오프셋 값(d k0-1, d k0, d k0+1, d k0+2)에 따라서, 제1 픽셀(740)에 대응하는 위치의 샘플 값들(S11, S21, S31, S41)을 결정할 수 있다.Accordingly, after determining the index k 0 value of the reference pixel of the first image 610 at a position corresponding to the first pixel 740 of the second image 620 , the electronic device 1000 according to an embodiment , according to the offset values d k0-1 , d k0 , d k0+1 , d k0+2 with respect to the reference pixel k 0 , sample values S11 at positions corresponding to the first pixel 740 , S21, S31, S41) may be determined.
일 실시 예에 따라 오프셋 값이 적용되기 전, 각각 샘플 값으로 결정되는 제1 영상의 픽셀 값들은, 각각 1 픽셀의 일정한 간격으로 위치한 픽셀들의 값으로 결정될 수 있다. 그러나, 오프셋 값이 적용된 인덱스 값에 따라서, 샘플 값으로 결정되는 제1 영상의 픽셀 값들은, 다양한 간격으로 위치한 픽셀들의 값으로 결정될 수 있다.According to an embodiment, before the offset value is applied, the pixel values of the first image, which are each determined as the sample value, may be determined as the values of pixels located at regular intervals of one pixel, respectively. However, according to the index value to which the offset value is applied, pixel values of the first image determined as sample values may be determined as values of pixels located at various intervals.
예를 들어, 제1 영상(610)의 영역들 중, 고주파수 영역(ex. 엣지, 경계선)에 포함된 픽셀값에 대한 오프셋 값들은, 제2 영상(620)의 하나의 픽셀을 생성하는데 이용되는, 제1 영상(610)의 픽셀들 간 간격이 상대적으로 좁아지도록 결정될 수 있다. 따라서, 일 실시 예에 의하면, 좁은 영역에 위치한 제1 영상(610)의 픽셀 값들에 기초하여, 제2 영상(620)의 픽셀들이 생성됨에 따라, 제2 영상(620)의 고주파수 영역에서, 블록화되거나, 라인 영역이 흐릿해지는 에러가 최소화될 수 있다.For example, among the regions of the first image 610 , offset values for pixel values included in a high-frequency region (eg, an edge, a boundary line) are used to generate one pixel of the second image 620 . , may be determined such that an interval between pixels of the first image 610 becomes relatively narrow. Accordingly, according to an embodiment, as pixels of the second image 620 are generated based on the pixel values of the first image 610 located in a narrow area, in the high-frequency region of the second image 620, the block is formed. Alternatively, an error in which the line area is blurred may be minimized.
반면, 제1 영상(610)의 영역들 중, 저주파수 영역(ex. 배경, 단색면)에 포함된 픽셀값에 대한 오프셋 값들은, 제2 영상(620)의 하나의 픽셀을 생성하는데 이용되는, 제1 영상(610)의 픽셀들 간 간격이 상대적으로 넓어지도록 결정될 수 있다.On the other hand, among the regions of the first image 610 , offset values for pixel values included in a low-frequency region (eg, a background, a monochromatic surface) are used to generate one pixel of the second image 620 , It may be determined that an interval between pixels of the first image 610 is relatively wide.
전자 장치(1000)는, 이와 동일한 방식으로, 제2 영상(620)과 동일한 크기를 가지는 제1 내지 제4 변환 특징 정보들(731, 732, 733, 734)를 획득할 수 있다.The electronic device 1000 may acquire the first to fourth transformation characteristic information 731 , 732 , 733 , and 734 having the same size as the second image 620 in the same manner.
다시 도 6을 참조하면, 영상 처리 장치(100)는 제1 내지 제4 변환 특징 정보들(630)에 u j 3, u j 2, u j 1, u j 0을 각각 곱하여, 위치 변환 특징 정보들(640)을 생성할 수 있다.Referring back to FIG. 6 , the image processing apparatus 100 multiplies the first to fourth transformation characteristic information 630 by u j 3 , u j 2 , u j 1 , and u j 0 , respectively, to obtain position transformation characteristic information. 640 may be created.
또한, 전자 장치(1000)는 위치 변환 특징 정보들(640)과 스케일링 커널(650)의 컨볼루션 연산을 수행함으로써, 제1 영상(610)이 비-정수 배 업 스케일된 제2 영상(620)을 획득할 수 있다. 또한, 일 실시 예에 의한 스케일링 커널에 포함되는 가중치들의 개수는, 제2 영상에 포함되는 하나의 픽셀 값을 계산하기 위해 이용되는 제1 영상에 포함되는 픽셀들의 개수 n에 기초하여 결정될 수 있다.In addition, the electronic device 1000 performs a convolution operation on the position transformation feature information 640 and the scaling kernel 650 , so that the first image 610 is upscaled by a non-integer multiple of the second image 620 . can be obtained. In addition, the number of weights included in the scaling kernel according to an embodiment may be determined based on the number n of pixels included in the first image used to calculate one pixel value included in the second image.
일 실시 예에 의하면, 제1 영상(610)의 각 픽셀에 대해 오프셋 값이 결정되는 경우와 동일하게, 제1 영상(610)의 각 픽셀에 대한, 보상 가중치 값들이 결정될 수 있다. 일 실시 예에 의하면, 제1 영상(610)의 각 픽셀마다 결정된 오프셋 값들의 수와 동일한 개수의 보상 가중치 값들이 결정될 수 있고, 보상 가중치 값들은 스케일링 커널(650)에 포함된 가중치 값들에 적용될 수 있다.According to an embodiment, in the same manner as when an offset value is determined for each pixel of the first image 610 , compensation weight values for each pixel of the first image 610 may be determined. According to an embodiment, the same number of compensation weight values as the number of offset values determined for each pixel of the first image 610 may be determined, and the compensation weight values may be applied to weight values included in the scaling kernel 650 . have.
일 실시 예에 의한 보상 가중치 값들은, 미리 학습된 스케일링 커널(650)이, 일 실시 예에 의한 오프셋 값이 이용되지 않은 상태에서 학습된 커널인 점을 고려하여, 스케일링 커널(650)을 보정하기 위한 값이다.Compensating weight values according to an embodiment are to correct the scaling kernel 650 in consideration of that the pre-learned scaling kernel 650 is a kernel learned in a state in which the offset value according to the embodiment is not used. value for
일 실시 예에 의한 보상 가중치 값들(w k0-1, w k0, w k0+1, w k0+2)은, 오프셋 값과 동일하게, 제1 영상(610)의 각 영역별 특징에 기초하여, 제1 영상(610)의 각 픽셀에 대해, 제2 영상(620)의 하나의 픽셀이 생성되는데 이용되는 제1 영상(610)의 픽셀 개수만큼, 결정될 수 있다. 예를 들어, 제2 영상(620)에서 하나의 픽셀이 생성되는데, 4개의 제1 영상(610)의 서로 다른 픽셀이 이용되는 경우, 제1 영상(610)의 각각의 픽셀에 대해, 4개의 보상 가중치 값들이 각각 결정될 수 있다. Compensation weight values w k0-1 , w k0 , w k0+1 , w k0+2 according to an embodiment are the same as the offset value, based on the characteristics of each region of the first image 610 , For each pixel of the first image 610 , the number of pixels of the first image 610 used to generate one pixel of the second image 620 may be determined. For example, when one pixel is generated in the second image 620 and four different pixels of the first image 610 are used, for each pixel of the first image 610, four pixels are generated. Compensation weight values may be determined respectively.
일 실시 예에 의한 보상 가중치 값은, 보상 가중치 값을 결정하기 위하여 미리 학습된 제2 커널과, 제1 영상(610)간 컨볼루션 연산이 수행된 결과에 따라서, 결정될 수 있다. 일 실시 예에 의한 제2 커널은, 제1 커널과 함께 제2 커널을 이용하여, 제1 영상(610)이 스케일링됨으로써 생성된 제2 영상(620)과, 정답으로 설정된 제2 영상 간의 차이가 최소화되도록, 미리 학습될 수 있다.The compensation weight value according to an embodiment may be determined according to a result of performing a convolution operation between the second kernel learned in advance and the first image 610 to determine the compensation weight value. The second kernel according to an embodiment uses the second kernel together with the first kernel, so that the difference between the second image 620 generated by scaling the first image 610 and the second image set as a correct answer is To be minimized, it can be learned in advance.
또한, 일 실시 예에 의한 보상 가중치 값은, 제1 영상(610)과 컨볼루션 연산이 수행되는 대신, 제1 커널에 의해 획득된 오프셋 값과 컨볼루션 연산이 수행되는, 제3 커널에 기초하여 결정될 수도 있다. 예를 들면, 보상 가중치 값은, 보상 가중치 값을 결정하기 위하여 미리 학습된 제3 커널과, 오프셋 값들 간 컨볼루션 연산이 수행된 결과에 따라서, 결정될 수 있다. 일 실시 예에 의한 제3 커널은, 제2 커널과 마찬가지로, 제1 커널과 함께 제3 커널을 이용하여, 제1 영상(610)이 스케일링됨으로써 생성된 제2 영상(620)과, 정답으로 설정된 제2 영상 간의 차이가 최소화되도록, 미리 학습될 수 있다.In addition, the compensation weight value according to an embodiment is based on a third kernel in which a convolution operation is performed with an offset value obtained by the first kernel instead of a convolution operation performed with the first image 610 . may be decided. For example, the compensation weight value may be determined according to a result of performing a convolution operation between the third kernel learned in advance to determine the compensation weight value and the offset values. Like the second kernel, the third kernel according to an embodiment uses the third kernel together with the first kernel, and the second image 620 generated by scaling the first image 610 and the It may be learned in advance so that the difference between the second images is minimized.
일 실시 예에 의한 컨볼루션 연산에 의하면, 제1 영상(610)의 영역별로 특징 정보에 대응한 값들이 추출될 수 있다. 따라서, 일 실시 예에 의하면, 제1 영상(610)과 미리 학습된 제2 커널 간 컨볼루션 연산이 수행됨으로써, 제1 영상(610)의 각 영역별 특징에 따라 다르게 결정된 보상 가중치 값이, 제1 영상의 각각의 픽셀에 대하여 결정될 수 있다. 제3 커널이 이용되는 경우도, 제1 영상(610)의 컨볼루션 연산으로 획득된 오프셋 값과, 컨볼루션 연산이 수행되므로, 제1 영상(610)의 각 영역별 특징에 따라 다르게 결정된 보상 가중치 값이, 제1 영상의 각각의 픽셀에 대하여 결정될 수 있다.According to the convolution operation according to an embodiment, values corresponding to the feature information may be extracted for each region of the first image 610 . Accordingly, according to an embodiment, by performing a convolution operation between the first image 610 and the pre-learned second kernel, the compensation weight value differently determined according to the characteristics of each region of the first image 610 is It may be determined for each pixel of one image. Even when the third kernel is used, since the offset value obtained by the convolution operation of the first image 610 and the convolution operation are performed, the compensation weight is determined differently according to the characteristics of each region of the first image 610 . A value may be determined for each pixel of the first image.
일 실시 예에 의하면, 스케일링 커널(650)의 가중치 값들에 보상 가중치 값들이 적용된 후, 위치 변환 특징 정보들(640)과 스케일링 커널(650)의 컨볼루션 연산이 수행될 수 있다.According to an embodiment, after compensation weight values are applied to the weight values of the scaling kernel 650 , a convolution operation between the position transformation feature information 640 and the scaling kernel 650 may be performed.
예를 들어, 제1 영상(610)에, 도 6의 디컨볼루션 연산이 수행되어 업 스케일된 제2 영상(620)의 픽셀 y j0의 값은, 다음의 수학식 5와 같이 나타낼 수 있다. For example, the value of the pixel y j0 of the second image 620 that is upscaled by performing the deconvolution operation of FIG. 6 on the first image 610 may be expressed as Equation 5 below.
Figure PCTKR2020015426-appb-img-000009
Figure PCTKR2020015426-appb-img-000009
도 8은 일 실시 예에 의한 제1 영상(610)을 스케일링하여 제2 영상(620)을 생성하는 일 예를 나타낸 블록도이다.8 is a block diagram illustrating an example of generating a second image 620 by scaling a first image 610 according to an embodiment.
도 8을 참조하면, 전자 장치(1000)는, 스케일링 처리부(810)에서, 제1 영상(610)을 스케일링하여, 제2 영상(620)을 생성할 수 있다.Referring to FIG. 8 , the electronic device 1000 may generate the second image 620 by scaling the first image 610 in the scaling processor 810 .
일 실시 예에 의한 스케일링 처리부(810)는, 오프셋 획득부(811), 인덱스 결정부(812), 보상 가중치 획득부(813) 및 컨볼루션 연산부(814)를 포함하여, 제1 영상(610)이 스케일링된 제2 영상(620)을 생성할 수 있다.The scaling processing unit 810 according to an embodiment includes an offset obtaining unit 811 , an index determining unit 812 , a compensation weight obtaining unit 813 , and a convolution calculating unit 814 , including the first image 610 . This scaled second image 620 may be generated.
일 실시 예에 의한 오프셋 획득부(811)는, 제1 영상(610)의 각 픽셀에 대하여, 제2 영상(620)의 하나의 픽셀이 생성되는데 이용되는 제1 영상(610)의 픽셀 개수만큼의 오프셋 값들을 결정할 수 있다. 일 실시 예에 의한 오프셋 획득부(811)는, 오프셋 값을 결정하기 위하여 미리 학습된 제1 커널과, 제1 영상(610)간 컨볼루션 연산이 수행된 결과에 따라서, 제1 영상의 각 픽셀에 대한 오프셋 값을 획득할 수 있다.The offset acquirer 811 according to an embodiment may be configured to, for each pixel of the first image 610 , as many as the number of pixels of the first image 610 used to generate one pixel of the second image 620 . may determine the offset values of . The offset acquirer 811 according to an embodiment may be configured to determine each pixel of the first image according to a result of performing a convolution operation between a pre-learned first kernel and the first image 610 to determine an offset value. It is possible to obtain an offset value for .
일 실시 예에 의한 인덱스 결정부(812)는, 제2 영상(610)의 제1 픽셀(740)과 대응되는 제1 영상(610)의 기준 픽셀의 인덱스 값(즉, 제1 픽셀(740)의 인덱스 값을 버림한 값)이 k 0 인 경우, 오프셋 값들(d k0-1, d k0, d k0+1, d k0+2)을 상기 인덱스에 적용(ex. 인덱스 값에 오프셋 값을 더함)함으로써, 변환 특징 정보(630) 각각에 포함되는 샘플 값들을 결정하기 위한, 제1 영상(610)의 픽셀들에 대한 인덱스 값을 결정할 수 있다. 예를 들어, 제1 변환 특징 정보(731)에 대한 제1 샘플 값(S11)은, k 0-1+d k0-1를 인덱스로 가지는 제1 영상(610)의 픽셀 값으로 결정될 수 있다. 일 실시 예에 의하면, 인덱스 값이 정수가 아닌 실수값인 경우에는, 제1 영상(610)의 복수 개의 픽셀 값들 간 가중치 합으로 샘플값이 결정될 수 있다.The index determiner 812 according to an exemplary embodiment may include an index value (ie, the first pixel 740 ) of a reference pixel of the first image 610 corresponding to the first pixel 740 of the second image 610 . When the value of the index value of ) is k 0 , the offset values (d k0-1 , d k0 , d k0+1 , d k0+2 ) are applied to the index (eg, the offset value is added to the index value) ), index values for pixels of the first image 610 for determining sample values included in each of the transformation characteristic information 630 may be determined. For example, the first sample value S11 for the first transformation characteristic information 731 may be determined as a pixel value of the first image 610 having k 0 -1+d k0-1 as an index. According to an embodiment, when the index value is a real value rather than an integer, a sample value may be determined as a weighted sum between a plurality of pixel values of the first image 610 .
따라서, 일 실시 예에 의한 제2 영상(620)에 대한 하나의 픽셀을 생성하기 위한, 샘플 값들에 대응하는, 제1 영상(610)의 픽셀들의 간격은, 제1 영상(610)의 영역 특성(ex. 주파수 특성)에 따라 결정된 오프셋 값에 따라서, 적응적으로 결정될 수 있다.Accordingly, according to an embodiment, an interval between pixels of the first image 610 corresponding to sample values for generating one pixel of the second image 620 is a region characteristic of the first image 610 . It may be adaptively determined according to an offset value determined according to (eg. frequency characteristic).
일 실시 예에 의한 보상 가중치 획득부(813)는, 오프셋 값과 동일하게, 제1 영상(610)의 각 영역별 특징에 기초하여, 제1 영상(610)의 각 픽셀에 대해, 제2 영상(620)의 하나의 픽셀이 생성되는데 이용되는 제1 영상(610)의 픽셀 개수만큼, 보상 가중치 값들을 결정할 수 있다. The compensation weight acquirer 813 according to an embodiment may generate the second image for each pixel of the first image 610 based on the characteristics of each region of the first image 610, identical to the offset value. Compensation weight values may be determined as many as the number of pixels of the first image 610 used to generate one pixel of 620 .
일 실시 예에 의한 보상 가중치 획득부(813)는, 보상 가중치 값을 결정하기 위하여 미리 학습된 제2 커널과, 제1 영상(610)간 컨볼루션 연산이 수행된 결과에 따라서, 보상 가중치 값을 획득할 수 있다. The compensation weight acquirer 813 according to an embodiment may determine the compensation weight value according to a result of performing a convolution operation between the pre-learned second kernel and the first image 610 to determine the compensation weight value. can be obtained
또한, 일 실시 예에 의한 보상 가중치 획득부(813)는, 제2 커널 대신, 보상 가중치 값을 결정하기 위하여 미리 학습된 제3 커널과, 제1 커널에 의해 획득된 오프셋 값들 간 컨볼루션 연산이 수행된 결과에 따라서, 보상 가중치 값을 획득할 수도 있다.In addition, the compensation weight acquirer 813 according to an embodiment may perform a convolution operation between the offset values obtained by the third kernel and the first kernel learned in advance to determine the compensation weight value instead of the second kernel. According to the performed result, a compensation weight value may be obtained.
일 실시 예에 따라 획득된 보상 가중치 값은, 스케일링 커널(650)의 가중치 값들에 보상 가중치 값들이 적용된 후, 컨볼루션 연산부(814)에 의해, 위치 변환 특징 정보들(640)과 스케일링 커널(650)의 컨볼루션 연산이 수행될 수 있다.The compensation weight value obtained according to an embodiment is obtained by applying the compensation weight values to the weight values of the scaling kernel 650, and then, by the convolution operation unit 814, the position transformation feature information 640 and the scaling kernel 650 ) convolution operation can be performed.
도 9는 일 실시 예에 의한 제1 커널 및 제2 커널에 기초하여, 오프셋 및 보상 가중치를 획득하는 일 예를 나타낸 도면이다.9 is a diagram illustrating an example of obtaining an offset and a compensation weight based on a first kernel and a second kernel according to an embodiment.
일 실시 예에 의하면, 제1 영상(610)의 픽셀 중 인덱스 i의 픽셀(x i)에 대해, 제1 커널과의 컨볼루션 연산(910)이 수행됨으로써, 픽셀(x i)와 대응되는 오프셋 값들(d i-1, d i, d i+1, d i+2)이 획득될 수 있다.According to one embodiment, for the pixel (x i) of the index i of the pixel in the first image 610, a convolution operation offset 910 is performed. Thus, corresponding to the pixel (x i) with the first kernel Values d i-1 , d i , d i+1 , d i+2 can be obtained.
일 실시 예에 의한 제1 커널은, 제1 영상(610)의 각 픽셀에 대한 오프셋 값들을 획득하기 위하여 미리 학습된 값들을 포함하는 3x3 크기의 행렬로 구성될 수 있다. 일 실시 예에 의한 제1 커널은, 픽셀(x i)가 속한 영역의 특징(ex. 고주파수 영역 또는 저주파수 영역)에 기초하여, 적합한 오프셋 값들이 출력될 수 있도록, 미리 학습될 수 있다.The first kernel according to an embodiment may be configured as a 3x3 matrix including values previously learned in order to obtain offset values for each pixel of the first image 610 . The first kernel according to an embodiment may be pre-learned so that appropriate offset values may be output based on a characteristic (eg, a high-frequency region or a low-frequency region) of a region to which the pixel x i belongs.
일 실시 예에 따라 획득된 오프셋 값에 따라서, 제2 영상(620)의 픽셀 y의 인덱스 값을 버림한 값이 i으로 획득됨에 따라, 픽셀 y에 대한 제1 영상(610)의 기준 픽셀이 x i 인 경우, 픽셀 y을 생성하기 위해 이용되는 제1 영상(610)의 픽셀들의 인덱스 값은, i-1, i, i+1,i+2가 아닌, 오프셋 값들로 위치가 조정된, i-1+d i-1, i+d i, i+1+d i+1,i+2+d i+2 으로 결정될 수 있다. According to an embodiment, as a value obtained by discarding an index value of pixel y of the second image 620 is obtained as i according to the obtained offset value, the reference pixel of the first image 610 for the pixel y is x In the case of i, the index values of the pixels of the first image 610 used to generate the pixel y are positions adjusted to offset values other than i-1, i, i+1, i+2, i It may be determined as -1+d i-1 , i+d i , i+1+d i+1 , i+2+d i+2 .
따라서, 위치 간격이 1픽셀로 일정한, i-1, i, i+1,i+2 대신, 제1 영상(610)의 영역별 특성(ex. 주파수 특성)에 따라서, 적응적으로 결정된 오프셋 값으로 위치가 조정된 제1 영상(610)의 픽셀 값들에 기초하여 제2 영상(620)의 픽셀 값이 생성될 수 있다.Therefore, instead of i-1, i, i+1, i+2, where the position interval is constant as 1 pixel, an offset value adaptively determined according to a characteristic (eg, a frequency characteristic) of each region of the first image 610 . A pixel value of the second image 620 may be generated based on the pixel values of the first image 610 whose position is adjusted to .
일 실시 예에 의하면, 제1 영상(610)의 픽셀 중 인덱스 i의 픽셀(x i)에 대해, 제2 커널과의 컨볼루션 연산(920)이 수행됨으로써, 픽셀(x i)와 대응되는 보상 가중치 값들(w i-1, w i, w i+1, w i+2)이 획득될 수 있다.According to an embodiment, a convolution operation 920 with a second kernel is performed on a pixel (x i ) of index i among pixels of the first image 610 , thereby compensating corresponding to the pixel (x i ). Weight values w i-1 , w i , w i+1 , w i+2 may be obtained.
일 실시 예에 의한 제2 커널은, 제1 영상(610)의 각 픽셀에 대한 보상 가중치 값들을 획득하기 위하여 미리 학습된 값들을 포함하는 3x3 크기의 행렬로 구성될 수 있다. 일 실시 예에 의한 제2 커널은, 픽셀(x i)가 속한 영역의 특징(ex. 고주파수 영역 또는 저주파수 영역)에 기초하여, 적합한 보상 가중치 값들이 출력될 수 있도록, 미리 학습될 수 있다.The second kernel according to an embodiment may be configured as a 3x3 matrix including values previously learned in order to obtain compensation weight values for each pixel of the first image 610 . The second kernel according to an embodiment may be pre-learned so that appropriate compensation weight values may be output based on a characteristic (eg, a high-frequency region or a low-frequency region) of a region to which the pixel x i belongs.
일 실시 예에 의한 제2 커널에 기초하여 획득된 보상 가중치 값들은, 제2 영상(620)의 픽셀 y를 획득하는데 이용되는, 스케일링 커널(940)의 가중치 값들에 적용될 수 있다. 일 실시 예에 의하면, 상술한 수학식 5와 같이, 각각 오프셋 값이 적용된 제1 영상(610)의 픽셀들과 대응되는 구성 요소에 보상 가중치 값들이 적용(930)될 수 있다.Compensation weight values obtained based on the second kernel according to an embodiment may be applied to weight values of the scaling kernel 940 used to obtain the pixel y of the second image 620 . According to an embodiment, as shown in Equation 5 above, compensation weight values may be applied 930 to the pixels of the first image 610 to which the offset values are applied and corresponding components.
도 10은 일 실시 예에 의한 제1 커널 및 제3 커널에 기초하여, 오프셋 및 보상 가중치를 획득하는 일 예를 나타낸 도면이다.10 is a diagram illustrating an example of obtaining an offset and a compensation weight based on a first kernel and a third kernel according to an embodiment.
일 실시 예에 의하면, 도 9에 도시된 예와 동일하게, 제1 영상(610)의 픽셀 중 인덱스 i의 픽셀(x i)에 대해, 제1 커널과의 컨볼루션 연산(1010)이 수행됨으로써, 픽셀(x i)와 대응되는 오프셋 값들(d i-1, d i, d i+1, d i+2)이 획득될 수 있다.According to an embodiment, as in the example shown in FIG. 9 , the convolution operation 1010 with the first kernel is performed on the pixel (x i ) of index i among the pixels of the first image 610 . , offset values d i-1 , d i , d i+1 , d i+2 corresponding to the pixel x i may be obtained.
또한, 일 실시 예에 의하면, 제1 커널과의 컨볼루션 연산(1010)의 결과인, 오프셋 값들(d i-1, d i, d i+1, d i+2)과, 제3 커널과의 컨볼루션 연산(1020)이 수행됨으로써, 픽셀(x i)와 대응되는 보상 가중치 값들(w' i-1, w' i, w' i+1, w' i+2)이 획득될 수 있다. In addition, according to an embodiment, the offset values d i-1 , d i , d i+1 , d i+2 , which are the results of the convolution operation 1010 with the first kernel, and the third kernel By performing the convolution operation 1020 of , compensation weight values w' i-1 , w' i , w' i+1 , w' i+2 corresponding to the pixel x i may be obtained. .
일 실시 예에 의한 제3 커널은, 오프셋 값들(d i-1, d i, d i+1, d i+2)과의 컨볼루션 연산을 통해, 제1 영상(610)의 각 픽셀에 대한 보상 가중치 값들을 획득하기 위하여, 미리 학습된 값들을 포함하는 3x3 크기의 행렬로 구성될 수 있다. 일 실시 예에 의한 제3 커널은, 픽셀(x i)가 속한 영역의 특징(ex. 고주파수 영역 또는 저주파수 영역)이 이미 고려된 오프셋 값들(d i-1, d i, d i+1, d i+2)에 기초하여, 적합한 보상 가중치 값들이 출력될 수 있도록, 미리 학습될 수 있다.The third kernel according to an embodiment performs a convolution operation with the offset values d i-1 , d i , d i+1 , and d i+2 for each pixel of the first image 610 . In order to obtain the compensation weight values, it may be configured as a 3x3 matrix including pre-learned values. In the third kernel according to an embodiment, the offset values d i-1 , d i , d i+1 , d in which the characteristics of the region to which the pixel x i belongs (eg, the high frequency region or the low frequency region) are already considered. Based on i+2 ), it can be learned in advance so that suitable compensation weight values can be output.
일 실시 예에 따른, 도 9의 제2 커널에 따른 컨볼루션 연산(920)에 기초하여 획득된 보상 가중치 값들(w i-1, w i, w i+1, w i+2) 및 제3 커널에 따른 컨볼루션 연산(1020)에 기초하여 획득된 보상 가중치 값들(w' i-1, w' i, w' i+1, w' i+2)은 서로 대응될 수 있다. 일 실시 예에 의한 제2 커널 및 제3 커널은, 제1 영상(610)을 스케일링하여, 최적의 제2 영상(620)이 생성될 수 있도록, 각각 다르게 학습된 커널이므로, 보상 가중치 값들(w i-1, w i, w i+1, w i+2)과 보상 가중치 값들(w' i-1, w' i, w' i+1, w' i+2)은, 실질적으로 동일한 값일 수 있다. 상술한 예에 한하지 않고, 스케일링 커널(1040)의 각 가중치에 적용될 수 있는, 보상 가중치 값들은, 다양한 방법에 따라 학습된 커널에 기초하여 획득될 수 있다. Compensation weight values w i-1 , w i , w i+1 , w i+2 obtained based on the convolution operation 920 according to the second kernel of FIG. 9 and the third Compensation weight values w' i-1 , w' i , w' i+1 , w' i+2 obtained based on the convolution operation 1020 according to the kernel may correspond to each other. The second kernel and the third kernel according to an embodiment are different kernels learned so that an optimal second image 620 can be generated by scaling the first image 610 , so the compensation weight values w i-1 , w i , w i+1 , w i+2 ) and the compensation weight values (w' i-1 , w' i , w' i+1 , w' i+2 ) are substantially the same can The above-described example is not limited, and compensation weight values applicable to each weight of the scaling kernel 1040 may be obtained based on a learned kernel according to various methods.
일 실시 예에 의한 제3 커널에 기초하여 획득된 보상 가중치 값들은, 제2 영상(620)의 픽셀 y를 획득하는데 이용되는, 스케일링 커널(1040)의 가중치 값들에 적용될 수 있다. 일 실시 예에 의하면, 상술한 수학식 5와 같이, 각각 오프셋 값이 적용된 제1 영상(610)의 픽셀들과 대응되는 구성 요소에 보상 가중치 값들이 적용(1030)될 수 있다.Compensation weight values obtained based on the third kernel according to an embodiment may be applied to weight values of the scaling kernel 1040 used to obtain the pixel y of the second image 620 . According to an embodiment, as shown in Equation 5 above, compensation weight values may be applied 1030 to the pixels of the first image 610 to which the offset values are applied and corresponding components.
도 11은 일 실시 예에 의한 전자 장치(1000)의 내부 구성을 설명하기 위한 블록도이다.11 is a block diagram illustrating an internal configuration of the electronic device 1000 according to an embodiment.
도 12는 일 실시 예에 의한 전자 장치(1000)의 내부 구성을 설명하기 위한 블록도이다.12 is a block diagram illustrating an internal configuration of the electronic device 1000 according to an embodiment.
도 11을 참조하면, 전자 장치(1000)는, 프로세서(1300), 및 메모리(1700)을 포함할 수 있다. 그러나, 도 11에 도시된 구성 요소 모두가 전자 장치(1000)의 필수 구성 요소인 것은 아니다. 도 11에 도시된 구성 요소보다 많은 구성 요소에 의해 전자 장치(1000)가 구현될 수도 있고, 도 11에 도시된 구성 요소보다 적은 구성 요소에 의해 전자 장치(1000)가 구현될 수도 있다.Referring to FIG. 11 , the electronic device 1000 may include a processor 1300 and a memory 1700 . However, not all of the components shown in FIG. 11 are essential components of the electronic device 1000 . The electronic device 1000 may be implemented by more components than those illustrated in FIG. 11 , or the electronic device 1000 may be implemented by fewer components than those illustrated in FIG. 11 .
예를 들면, 전자 장치(1000)는 도 12에 도시된 바와 같이, 일 실시예에 따른 전자 장치(1000)는, 제어부(1300) 및 메모리(1700) 이외에 사용자 입력부(1100), 센싱부(1400), A/V 입력부(1600), 통신부(1500) 및 출력부(1200)를 더 포함할 수도 있다.For example, as shown in FIG. 12 , the electronic device 1000 according to an embodiment includes a user input unit 1100 and a sensing unit 1400 in addition to the control unit 1300 and the memory 1700 . ), an A/V input unit 1600 , a communication unit 1500 , and an output unit 1200 may be further included.
사용자 입력부(1100)는, 사용자가 전자 장치(1000)를 제어하기 위한 데이터를 입력하는 수단을 의미한다. 예를 들어, 사용자 입력부(1100)에는 키 패드(key pad), 돔 스위치 (dome switch), 터치 패드(접촉식 정전 용량 방식, 압력식 저항막 방식, 적외선 감지 방식, 표면 초음파 전도 방식, 적분식 장력 측정 방식, 피에조 효과 방식 등), 조그 휠, 조그 스위치 등이 있을 수 있으나 이에 한정되는 것은 아니다.The user input unit 1100 means a means for a user to input data for controlling the electronic device 1000 . For example, the user input unit 1100 includes a key pad, a dome switch, and a touch pad (contact capacitive method, pressure resistance film method, infrared sensing method, surface ultrasonic conduction method, integral type). There may be a tension measurement method, a piezo effect method, etc.), a jog wheel, a jog switch, and the like, but is not limited thereto.
일 실시 예에 의하면, 사용자 입력부(1100)는, 제1 영상을 스케일링하여 제2 영상을 생성하기 위한 사용자 입력을 수신할 수 있다.According to an embodiment, the user input unit 1100 may receive a user input for generating a second image by scaling the first image.
출력부(1200)는, 오디오 신호 또는 비디오 신호 또는 진동 신호를 출력할 수 있으며, 출력부(1200)는 디스플레이부(1210), 음향 출력부(1220), 및 진동 모터(1230)를 포함할 수 있다.The output unit 1200 may output an audio signal, a video signal, or a vibration signal, and the output unit 1200 may include a display unit 1210 , a sound output unit 1220 , and a vibration motor 1230 . have.
디스플레이부(1210)는 전자 장치(1000)에서 처리되는 정보를 표시 출력한다. 일 실시 예에 의하면, 디스플레이부(1210)는 제1 영상을 스케일링하여 생성된 제2 영상을 표시할 수 있다.The display unit 1210 displays and outputs information processed by the electronic device 1000 . According to an embodiment, the display unit 1210 may display the second image generated by scaling the first image.
한편, 디스플레이부(1210)와 터치패드가 레이어 구조를 이루어 터치 스크린으로 구성되는 경우, 디스플레이부(1210)는 출력 장치 이외에 입력 장치로도 사용될 수 있다. 디스플레이부(1210)는 액정 디스플레이(liquid crystal display), 박막 트랜지스터 액정 디스플레이(thin film transistor-liquid crystal display), 유기 발광 다이오드(organic light-emitting diode), 플렉시블 디스플레이(flexible display), 3차원 디스플레이(3D display), 전기영동 디스플레이(electrophoretic display) 중에서 적어도 하나를 포함할 수 있다. 그리고 전자 장치(1000)의 구현 형태에 따라 전자 장치(1000)는 디스플레이부(1210)를 2개 이상 포함할 수도 있다. On the other hand, when the display unit 1210 and the touch pad form a layer structure to form a touch screen, the display unit 1210 may be used as an input device in addition to an output device. The display unit 1210 includes a liquid crystal display, a thin film transistor-liquid crystal display, an organic light-emitting diode, a flexible display, a three-dimensional display ( 3D display) and electrophoretic display (electrophoretic display) may include at least one. Also, depending on the implementation form of the electronic device 1000 , the electronic device 1000 may include two or more display units 1210 .
음향 출력부(1220)는 통신부(1500)로부터 수신되거나 메모리(1700)에 저장된 오디오 데이터를 출력한다. 진동 모터(1230)는 진동 신호를 출력할 수 있다. 또한, 진동 모터(1230)는 터치스크린에 터치가 입력되는 경우 진동 신호를 출력할 수도 있다. The sound output unit 1220 outputs audio data received from the communication unit 1500 or stored in the memory 1700 . The vibration motor 1230 may output a vibration signal. Also, the vibration motor 1230 may output a vibration signal when a touch is input to the touch screen.
일 실시 예에 의하면, 음향 출력부(1220) 및 진동 모터(1230)는 영상이 스케일링된 결과와 관련된 정보를 출력할 수 있다.According to an embodiment, the sound output unit 1220 and the vibration motor 1230 may output information related to a result of scaling an image.
프로세서(1300)는, 통상적으로 전자 장치(1000)의 전반적인 동작을 제어한다. 예를 들어, 프로세서(1300)는, 메모리(1700)에 저장된 프로그램들을 실행함으로써, 사용자 입력부(1100), 출력부(1200), 센싱부(1400), 통신부(1500), A/V 입력부(1600) 등을 전반적으로 제어할 수 있다. The processor 1300 generally controls the overall operation of the electronic device 1000 . For example, the processor 1300 executes programs stored in the memory 1700 , and thus the user input unit 1100 , the output unit 1200 , the sensing unit 1400 , the communication unit 1500 , and the A/V input unit 1600 . ) can be controlled in general.
전자 장치(1000)는 적어도 하나의 프로세서(1300)를 포함할 수 있다. 예를 들면, 전자 장치(1000)는 CPU(Central Processing Unit), GPU(Graphics Processing Unit), NPU(Neural Processing Unit) 등의 다양한 종류의 프로세서를 포함할 수 있다.The electronic device 1000 may include at least one processor 1300 . For example, the electronic device 1000 may include various types of processors, such as a central processing unit (CPU), a graphics processing unit (GPU), and a neural processing unit (NPU).
프로세서(1300)는 기본적인 산술, 로직 및 입출력 연산을 수행함으로써, 컴퓨터 프로그램의 명령을 처리하도록 구성될 수 있다. 명령은 메모리(1700)로부터 프로세서(1300)에 제공되거나, 통신부(1500)를 통해 수신되어 프로세서(1300)로 제공될 수 있다. 예를 들면 프로세서(1300)는 메모리와 같은 기록 장치에 저장된 프로그램 코드에 따라 명령을 실행하도록 구성될 수 있다.The processor 1300 may be configured to process instructions of a computer program by performing basic arithmetic, logic, and input/output operations. The command may be provided to the processor 1300 from the memory 1700 or may be received through the communication unit 1500 and provided to the processor 1300 . For example, the processor 1300 may be configured to execute instructions according to program codes stored in a recording device such as a memory.
일 실시 예에 의한 프로세서(1300)는 제1 영상 및 제2 영상 간의 위치 변환 특징 정보와 스케일링 커널과의 컨볼루션 연산을 수행함으로써, 제1 영상이 스케일링된 영상인, 제2 영상을 생성할 수 있다. 일 실시 예에 의한 위치 변환 특징 정보는, 제1 영상에 포함된 픽셀들의 값과, 제1 영상의 픽셀들과 제2 영상의 픽셀들 간의 상대적인 위치 관계에 기초하여 획득될 수 있다. 또한, 일 실시 예에 의한 상대적인 위치 관계는, 제1 영상의 각 영역별 특징에 기초하여 결정될 수 있다. 예를 들면, 상대적인 위치 관계는, 제1 영상의 적어도 하나의 픽셀과, 제1 커널과의 컨볼루션 연산이 수행된 결과에 기초하여 획득될 수 있다.The processor 1300 according to an embodiment may generate a second image in which the first image is a scaled image by performing a convolution operation between the position transformation feature information between the first image and the second image and the scaling kernel. have. The position transformation characteristic information according to an embodiment may be obtained based on values of pixels included in the first image and a relative positional relationship between pixels of the first image and pixels of the second image. Also, the relative positional relationship according to an embodiment may be determined based on a characteristic of each region of the first image. For example, the relative positional relationship may be obtained based on a result of performing a convolution operation between at least one pixel of the first image and the first kernel.
일 실시 예에 의하면, 제1 영상의 각 영역별 특징에 기초하여, 제2 영상에 포함되는 하나의 픽셀의 위치에 대한 제1 영상에 포함되는 n개의 픽셀들이 식별됨으로써, 상대적인 위치 관계가 결정될 수 있다. 일 실시 예에 의하면, 제2 영상의 하나의 픽셀을 획득하기 위해, 상기 n개의 픽셀들이 이용될 수 있다. According to an embodiment, a relative positional relationship may be determined by identifying n pixels included in the first image with respect to the position of one pixel included in the second image based on the characteristics of each region of the first image. have. According to an embodiment, the n pixels may be used to obtain one pixel of the second image.
일 실시 예에 의한, 프로세서(1300)는 제2 영상의 하나의 픽셀이 나타내는 인덱스 값에 버림 연산을 수행하여, k j(k j=정수)를 결정하고, 제1 영상의 각 영역별 특징에 기초하여, 상기 k j 에 대응하는 n개의 오프셋 값을 획득할 수 있다. 일 실시 예에 의한 n개의 오프셋 값은, 상기 k j 에 대응하는 제1 영상의 픽셀을 포함한, 제1 영상의 적어도 하나의 픽셀과 제1 커널과의 컨볼루션 연산에 기초하여 획득될 수 있다. According to an embodiment, the processor 1300 performs a discard operation on an index value indicated by one pixel of the second image, determines k j (k j = integer), and adds Based on this, n offset values corresponding to the k j may be obtained. According to an embodiment, the n offset values may be obtained based on a convolution operation between at least one pixel of the first image including the pixel of the first image corresponding to k j and the first kernel.
또한, 프로세서(1300)는 n개의 오프셋 값에 기초하여, 상기 하나의 픽셀을 획득하기 위한, n개의 픽셀들을 식별할 수 있다. 예를 들면, k j에 기초하여 결정된 n개의 인덱스 값(ex. k j-1, k j, k j+1, k j+2)에, 각각 대응되는 n개의 오프셋 값을 더한 값을 인덱스로 하는, n개의 픽셀들이 식별될 수 있다.Also, the processor 1300 may identify n pixels to obtain the one pixel based on the n offset values. For example, a value obtained by adding n corresponding offset values to n index values (eg, k j -1, k j , k j +1, k j +2) determined based on k j is used as an index. , n pixels can be identified.
일 실시 예에 의한 상대적인 위치 관계가, 제1 영상의 각 영역별 특징에 따라 결정된 오프셋 값에 기초하여 결정됨에 따라서, 스케일링 커널도, 제1 영상의 각 영역별 특징에 기초하여 획득된 보상 가중치 값에 따라 보정될 수 있다. 일 실시 예에 의한 스케일링 커널이, 상기 오프셋 값을 고려하지 않은 상태에서 학습된 커널이므로, 보상 가중치 값에 따라 보정된 후, 제2 영상 생성을 위해, 이용될 수 있다.As the relative positional relationship according to an embodiment is determined based on the offset value determined according to the characteristics of each region of the first image, the scaling kernel also provides a compensation weight value obtained based on the characteristics of each region of the first image. can be corrected according to Since the scaling kernel according to an embodiment is a kernel learned in a state in which the offset value is not taken into consideration, it may be used to generate the second image after being corrected according to the compensation weight value.
일 실시 예에 의한 보상 가중치 값은, 제1 영상의 적어도 하나의 픽셀 및 제2 커널과의 컨볼루션 연산이 수행된 결과에 따라 결정되거나, 상술한 제1 커널의 컨볼루션 연산 결과와, 제3 커널과의 컨볼루션 연산이 수행된 결과에 따라 결정될 수 있다.The compensation weight value according to an embodiment is determined according to a result of performing a convolution operation between at least one pixel of the first image and the second kernel, or a result of the above-described convolution operation of the first kernel and the third It may be determined according to a result of performing a convolution operation with the kernel.
일 실시 예에 의한 프로세서(1300)는, 제1 영상의 각 영역별 특징에 기초하여, 스케일링 커널에 포함된 각각의 가중치 값들에 적용될 적어도 하나의 보상 가중치 값을 결정할 수 있다. 예를 들면, 보상 가중치 값은, 제2 커널 또는 제3 커널에 의한 컨볼루션 연산 결과에 따라 획득될 수 있다. 또한, 프로세서(1300)는 적어도 하나의 보상 가중치 값을 스케일링 커널의 적어도 하나의 가중치 값에 적용시킨 후, 적어도 하나의 보상 가중치 값이 적용된 스케일링 커널에 기초하여, 제1 영상이 스케일링된 제2 영상을 생성할 수 있다.The processor 1300 according to an embodiment may determine at least one compensation weight value to be applied to each weight value included in the scaling kernel, based on the characteristics of each region of the first image. For example, the compensation weight value may be obtained according to a result of a convolution operation performed by the second kernel or the third kernel. In addition, the processor 1300 applies at least one compensation weight value to at least one weight value of the scaling kernel, and then, based on the scaling kernel to which the at least one compensation weight value is applied, the second image to which the first image is scaled. can create
센싱부(1400)는, 전자 장치(1000)의 상태 또는 전자 장치(1000) 주변의 상태를 감지하고, 감지된 정보를 프로세서(1300)로 전달할 수 있다. The sensing unit 1400 may detect a state of the electronic device 1000 or a state around the electronic device 1000 , and transmit the sensed information to the processor 1300 .
센싱부(1400)는, 지자기 센서(Geomagnetic sensor)(1410), 가속도 센서(Acceleration sensor)(1420), 온/습도 센서(1430), 적외선 센서(1440), 자이로스코프 센서(1450), 위치 센서(예컨대, GPS)(1460), 기압 센서(1470), 근접 센서(1480), 및 RGB 센서(illuminance sensor)(1490) 중 적어도 하나를 포함할 수 있으나, 이에 한정되는 것은 아니다. The sensing unit 1400 includes a geomagnetic sensor 1410 , an acceleration sensor 1420 , a temperature/humidity sensor 1430 , an infrared sensor 1440 , a gyroscope sensor 1450 , and a position sensor. (eg, GPS) 1460 , a barometric pressure sensor 1470 , a proximity sensor 1480 , and at least one of an illuminance sensor 1490 , but is not limited thereto.
통신부(1500)는, 전자 장치(1000)가 서버(2000) 또는 외부 장치(미도시)와 통신을 하게 하는 하나 이상의 구성요소를 포함할 수 있다. 예를 들어, 통신부(1500)는, 근거리 통신부(1510), 이동 통신부(1520), 방송 수신부(1530)를 포함할 수 있다. The communication unit 1500 may include one or more components that allow the electronic device 1000 to communicate with the server 2000 or an external device (not shown). For example, the communication unit 1500 may include a short-range communication unit 1510 , a mobile communication unit 1520 , and a broadcast receiving unit 1530 .
근거리 통신부(short-range wireless communication unit)(1510)는, 블루투스 통신부, BLE(Bluetooth Low Energy) 통신부, 근거리 무선 통신부(Near Field Communication unit), WLAN(와이파이) 통신부, 지그비(Zigbee) 통신부, 적외선(IrDA, infrared Data Association) 통신부, WFD(Wi-Fi Direct) 통신부, UWB(ultra wideband) 통신부, Ant+ 통신부 등을 포함할 수 있으나, 이에 한정되는 것은 아니다. Short-range wireless communication unit 1510, Bluetooth communication unit, BLE (Bluetooth Low Energy) communication unit, short-range wireless communication unit (Near Field Communication unit), WLAN (Wi-Fi) communication unit, Zigbee (Zigbee) communication unit, infrared ( It may include an IrDA, infrared Data Association) communication unit, a Wi-Fi Direct (WFD) communication unit, an ultra wideband (UWB) communication unit, an Ant+ communication unit, and the like, but is not limited thereto.
이동 통신부(1520)는, 이동 통신망 상에서 기지국, 외부의 단말, 서버 중 적어도 하나와 무선 신호를 송수신한다. 여기에서, 무선 신호는, 음성 호 신호, 화상 통화 호 신호 또는 문자/멀티미디어 메시지 송수신에 따른 다양한 형태의 데이터를 포함할 수 있다.The mobile communication unit 1520 transmits/receives a radio signal to and from at least one of a base station, an external terminal, and a server on a mobile communication network. Here, the wireless signal may include various types of data according to transmission/reception of a voice call signal, a video call signal, or a text/multimedia message.
방송 수신부(1530)는, 방송 채널을 통하여 외부로부터 방송 신호 및/또는 방송 관련된 정보를 수신한다. 방송 채널은 위성 채널, 지상파 채널을 포함할 수 있다. 구현 예에 따라서 전자 장치(1000)가 방송 수신부(1530)를 포함하지 않을 수도 있다.The broadcast receiver 1530 receives a broadcast signal and/or broadcast-related information from the outside through a broadcast channel. The broadcast channel may include a satellite channel and a terrestrial channel. According to an embodiment, the electronic device 1000 may not include the broadcast receiver 1530 .
일 실시 예에 의한, 통신부(1500)는 영상을 스케일링하는데 필요한 데이터를 송수신할 수 있다. 예를 들면, 통신부(1500)는, 스케일링을 위한 제1 영상을 외부로부터 수신하거나, 제1 영상이 스케일링된 결과 생성된 제2 영상을 외부로 전송할 수 있다.According to an embodiment, the communication unit 1500 may transmit/receive data required for scaling an image. For example, the communication unit 1500 may receive a first image for scaling from the outside, or transmit a second image generated as a result of scaling the first image to the outside.
A/V(Audio/Video) 입력부(1600)는 오디오 신호 또는 비디오 신호 입력을 위한 것으로, 이에는 카메라(1610)와 마이크로폰(1620) 등이 포함될 수 있다. 카메라(1610)는 화상 통화모드 또는 촬영 모드에서 이미지 센서를 통해 정지영상 또는 동영상 등의 화상 프레임을 얻을 수 있다. 이미지 센서를 통해 캡쳐된 이미지는 프로세서(1300) 또는 별도의 이미지 처리부(미도시)를 통해 처리될 수 있다. The A/V (Audio/Video) input unit 1600 is for inputting an audio signal or a video signal, and may include a camera 1610 , a microphone 1620 , and the like. The camera 1610 may obtain an image frame such as a still image or a moving image through an image sensor in a video call mode or a shooting mode. The image captured through the image sensor may be processed through the processor 1300 or a separate image processing unit (not shown).
마이크로폰(1620)은, 외부의 음향 신호를 입력 받아 전기적인 음성 데이터로 처리한다. The microphone 1620 receives an external sound signal and processes it as electrical voice data.
메모리(1700)는, 프로세서(1300)의 처리 및 제어를 위한 프로그램을 저장할 수 있고, 전자 장치(1000)로 입력되거나 전자 장치(1000)로부터 출력되는 데이터를 저장할 수도 있다. The memory 1700 may store a program for processing and control of the processor 1300 , and may also store data input to or output from the electronic device 1000 .
일 실시 예에 의한 메모리(1700)는 제1 영상을 스케일링하여 제2 영상을 생성하는데 필요한 데이터를 저장할 수 있다. 예를 들어, 메모리(1700)는, 제1 영상과, 컨볼루션 연산을 통해 제2 영상을 생성하는데 필요한, 커널들(ex. 스케일링 커널, 제1 커널, 제2 커널, 제3 커널)을 저장할 수 있다.The memory 1700 according to an embodiment may store data required to generate a second image by scaling the first image. For example, the memory 1700 may store a first image and kernels (eg, a scaling kernel, a first kernel, a second kernel, and a third kernel) necessary to generate a second image through a convolution operation. can
메모리(1700)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(RAM, Random Access Memory) SRAM(Static Random Access Memory), 롬(ROM, Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다. The memory 1700 may include a flash memory type, a hard disk type, a multimedia card micro type, a card type memory (eg, SD or XD memory), and a RAM. (RAM, Random Access Memory) SRAM (Static Random Access Memory), ROM (Read-Only Memory), EEPROM (Electrically Erasable Programmable Read-Only Memory), PROM (Programmable Read-Only Memory), magnetic memory, magnetic disk , may include at least one type of storage medium among optical disks.
메모리(1700)에 저장된 프로그램들은 그 기능에 따라 복수 개의 모듈들로 분류할 수 있는데, 예를 들어, UI 모듈(1710), 터치 스크린 모듈(1720), 알림 모듈(1730) 등으로 분류될 수 있다. Programs stored in the memory 1700 may be classified into a plurality of modules according to their functions, for example, may be classified into a UI module 1710 , a touch screen module 1720 , a notification module 1730 , and the like. .
UI 모듈(1710)은, 애플리케이션 별로 전자 장치(1000)와 연동되는 특화된 UI, GUI 등을 제공할 수 있다. 터치 스크린 모듈(1720)은 사용자의 터치 스크린 상의 터치 제스처를 감지하고, 터치 제스처에 관한 정보를 프로세서(1300)로 전달할 수 있다. 일부 실시예에 따른 터치 스크린 모듈(1720)은 터치 코드를 인식하고 분석할 수 있다. 터치 스크린 모듈(1720)은 컨트롤러를 포함하는 별도의 하드웨어로 구성될 수도 있다.The UI module 1710 may provide a specialized UI, GUI, or the like that interworks with the electronic device 1000 for each application. The touch screen module 1720 may detect a touch gesture on the user's touch screen and transmit information about the touch gesture to the processor 1300 . The touch screen module 1720 according to some embodiments may recognize and analyze a touch code. The touch screen module 1720 may be configured as separate hardware including a controller.
터치스크린의 터치 또는 근접 터치를 감지하기 위해 터치스크린의 내부 또는 근처에 다양한 센서가 구비될 수 있다. 터치스크린의 터치를 감지하기 위한 센서의 일례로 촉각 센서가 있다. 촉각 센서는 사람이 느끼는 정도로 또는 그 이상으로 특정 물체의 접촉을 감지하는 센서를 말한다. 촉각 센서는 접촉면의 거칠기, 접촉 물체의 단단함, 접촉 지점의 온도 등의 다양한 정보를 감지할 수 있다.Various sensors may be provided inside or near the touch screen to detect a touch or a proximity touch of the touch screen. A tactile sensor is an example of a sensor for detecting a touch of a touch screen. A tactile sensor refers to a sensor that senses a touch of a specific object to the extent or higher than that felt by a human. The tactile sensor may sense various information such as the roughness of the contact surface, the hardness of the contact object, and the temperature of the contact point.
사용자의 터치 제스처에는 탭, 터치&홀드, 더블 탭, 드래그, 패닝, 플릭, 드래그 앤드 드롭, 스와이프 등이 있을 수 있다.The user's touch gesture may include a tap, touch & hold, double tap, drag, pan, flick, drag and drop, swipe, and the like.
알림 모듈(1730)은 전자 장치(1000)의 이벤트 발생을 알리기 위한 신호를 발생할 수 있다.The notification module 1730 may generate a signal for notifying the occurrence of an event in the electronic device 1000 .
도 13은 일 실시 예에 의한 영상을 스케일링하는 방법을 나타낸 순서도이다.13 is a flowchart illustrating a method of scaling an image according to an embodiment.
도 13을 참조하면, 단계 1310에서, 전자 장치(1000)는, 제1 영상의 각 영역별 특징에 기초하여, 제1 영상에 포함된 픽셀들과 제2 영상에 포함된 픽셀들의 상대적인 위치 관계를 결정할 수 있다. 일 실시 예에 의한 제1 영상의 각 영역별 특징은, 예를 들면, 각 영역별 주파수 특성을 포함할 수 있다. 일 실시 예에 의한 상대적인 위치 관계는, 제1 영상의 각 영역별 특징에 기초하여 결정될 수 있다. 예를 들면, 상대적인 위치 관계는, 제1 영상의 적어도 하나의 픽셀과, 제1 커널과의 컨볼루션 연산이 수행된 결과에 기초하여 획득될 수 있다.Referring to FIG. 13 , in operation 1310 , the electronic device 1000 determines the relative positional relationship between pixels included in the first image and pixels included in the second image based on the characteristics of each region of the first image. can decide The characteristic for each region of the first image according to an embodiment may include, for example, a frequency characteristic for each region. The relative positional relationship according to an embodiment may be determined based on a characteristic of each region of the first image. For example, the relative positional relationship may be obtained based on a result of performing a convolution operation between at least one pixel of the first image and the first kernel.
일 실시 예에 의하면, 제1 영상의 각 영역별 특징(ex. 주파수 특성)에 기초하여, 제2 영상에 포함되는 하나의 픽셀의 위치에 대한 제1 영상에 포함되는 n개의 픽셀들이 식별됨으로써, 상대적인 위치 관계가 결정될 수 있다. 일 실시 예에 의하면, 제2 영상의 하나의 픽셀을 획득하기 위해, 상기 n개의 픽셀들이 이용될 수 있다. According to an embodiment, n pixels included in the first image with respect to the position of one pixel included in the second image are identified based on the characteristics (eg, frequency characteristics) of each region of the first image, A relative positional relationship may be determined. According to an embodiment, the n pixels may be used to obtain one pixel of the second image.
일 실시 예에 의한, 전자 장치(1000)는 제2 영상의 하나의 픽셀이 나타내는 인덱스 값에 버림 연산을 수행하여, k j(k j=정수)를 결정하고, 제1 영상의 각 영역별 특징에 기초하여, 상기 k j 에 대응하는 n개의 오프셋 값을 획득할 수 있다. 일 실시 예에 의한 n개의 오프셋 값은, 상기 k j 에 대응하는 제1 영상의 픽셀을 포함한, 제1 영상의 적어도 하나의 픽셀과 제1 커널과의 컨볼루션 연산에 기초하여 획득될 수 있다. According to an embodiment, the electronic device 1000 determines k j (k j = an integer) by performing a discard operation on an index value indicated by one pixel of the second image, and features each region of the first image. Based on , n offset values corresponding to k j may be obtained. According to an embodiment, the n offset values may be obtained based on a convolution operation between at least one pixel of the first image including the pixel of the first image corresponding to k j and the first kernel.
또한, 전자 장치(1000)는 n개의 오프셋 값에 기초하여, 상기 하나의 픽셀을 획득하기 위한, n개의 픽셀들을 식별할 수 있다. 예를 들면, k j에 기초하여 결정된 n개의 인덱스 값(ex. k j-1, k j, k j+1, k j+2)에, 각각 대응되는 n개의 오프셋 값을 더한 값을 인덱스로 하는, n개의 픽셀들이 식별될 수 있다.Also, the electronic device 1000 may identify n pixels to obtain the one pixel based on the n offset values. For example, a value obtained by adding n corresponding offset values to n index values (eg, k j -1, k j , k j +1, k j +2) determined based on k j is used as an index. , n pixels can be identified.
단계 1320에서, 전자 장치(1000)는 상대적인 위치 관계 및 제1 영상에 포함된 픽셀들의 값에 기초하여, 위치 변환 특징 정보를 획득할 수 있다. 일 실시 예에 의한 위치 변환 특징 정보는, 제2 영상의 각 픽셀을 생성하는데 이용되는 샘플값들을 포함할 수 있다. In operation 1320 , the electronic device 1000 may obtain position transformation feature information based on a relative positional relationship and values of pixels included in the first image. The location transformation characteristic information according to an embodiment may include sample values used to generate each pixel of the second image.
일 실시 예에 의한 샘플값은, 단계 1310에서 결정된 상대적인 위치 관계에 따라, 제2 영상의 각 픽셀과 대응되는 제1 영상의 인덱스 값의 픽셀 값에 따라서 결정될 수 있다. 일 실시 예에 의한 제1 영상의 인덱스 값은, 오프셋 값이 더해짐에 따라서, 정수가 아닌 실수값으로 결정될 수 있다. 이 경우, 샘플값은, 인덱스 값의 소수점 이하의 값에 따라 가중치가 적용된 제1 영상의 픽셀 값들의 합으로 결정될 수 있다.The sample value according to an embodiment may be determined according to the pixel value of the index value of the first image corresponding to each pixel of the second image according to the relative positional relationship determined in operation 1310 . According to an embodiment, the index value of the first image may be determined as a real value instead of an integer as an offset value is added. In this case, the sample value may be determined as the sum of pixel values of the first image to which a weight is applied according to a value below a decimal point of the index value.
단계 1330에서, 전자 장치(1000)는 위치 변환 특징 정보와 스케일링 커널과의 컨볼루션 연산을 수행하여, 제1 영상을 스케일링한 제2 영상을 생성할 수 있다. In operation 1330 , the electronic device 1000 may perform a convolution operation between the location transformation feature information and the scaling kernel to generate a second image in which the first image is scaled.
일 실시 예에 의하면 상대적인 위치 관계가, 제1 영상의 각 영역별 특징에 따라 결정된 오프셋 값에 기초하여 결정됨에 따라서, 스케일링 커널도, 제1 영상의 각 영역별 특징에 기초하여 획득된 보상 가중치 값에 따라 보정된 후에, 위치 변환 특징 정보와의 컨볼루션 연산이 수행될 수 있다. According to an embodiment, as the relative positional relationship is determined based on the offset value determined according to the characteristic of each region of the first image, the scaling kernel also obtains a compensation weight value obtained based on the characteristic of each region of the first image. After being corrected according to , a convolution operation with the position transformation feature information may be performed.
일 실시 예에 의한 보상 가중치 값은, 제1 영상의 적어도 하나의 픽셀 및 제2 커널과의 컨볼루션 연산이 수행된 결과에 따라 결정되거나, 상술한 제1 커널의 컨볼루션 연산 결과와, 제3 커널과의 컨볼루션 연산이 수행된 결과에 따라 결정될 수 있다.The compensation weight value according to an embodiment is determined according to a result of performing a convolution operation between at least one pixel of the first image and the second kernel, or a result of the above-described convolution operation of the first kernel and the third It may be determined according to a result of performing a convolution operation with the kernel.
일 실시 예에 의한 전자 장치(1000)는 제1 영상의 각 영역별 특징(ex. 주파수 특성)에 기초하여, 스케일링 커널에 포함된 각각의 가중치 값들에 적용될 적어도 하나의 보상 가중치 값을 결정할 수 있다. 예를 들면, 보상 가중치 값은, 제2 커널 또는 제3 커널에 의한 컨볼루션 연산 결과에 따라 획득될 수 있다. 또한, 프로세서(1300)는 적어도 하나의 보상 가중치 값을 스케일링 커널의 적어도 하나의 가중치 값에 적용시킨 후, 적어도 하나의 보상 가중치 값이 적용된 스케일링 커널에 기초하여, 제1 영상이 스케일링된 제2 영상을 생성할 수 있다.The electronic device 1000 according to an embodiment may determine at least one compensation weight value to be applied to each weight value included in the scaling kernel based on a characteristic (eg, a frequency characteristic) of each region of the first image. . For example, the compensation weight value may be obtained according to a result of a convolution operation performed by the second kernel or the third kernel. In addition, the processor 1300 applies at least one compensation weight value to at least one weight value of the scaling kernel, and then, based on the scaling kernel to which the at least one compensation weight value is applied, the second image to which the first image is scaled. can create
일 실시 예에 의하면 입력 영상의 각 영역별 특징을 고려하여, 출력 영상의 제1 픽셀을 생성하는데 적합한, 입력 영상의 픽셀들이 결정될 수 있다.According to an embodiment, pixels of the input image suitable for generating the first pixel of the output image may be determined in consideration of the characteristics of each region of the input image.
기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, ‘비일시적 저장매체'는 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다. 예로, '비일시적 저장매체'는 데이터가 임시적으로 저장되는 버퍼를 포함할 수 있다.The device-readable storage medium may be provided in the form of a non-transitory storage medium. Here, 'non-transitory storage medium' is a tangible device and only means that it does not contain a signal (eg, electromagnetic wave). It does not distinguish the case where it is stored as For example, the 'non-transitory storage medium' may include a buffer in which data is temporarily stored.
일 실시예에 따르면, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어(예: 플레이 스토어 TM)를 통해 또는 두개의 사용자 장치들(예: 스마트폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품(예: 다운로더블 앱(downloadable app))의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.According to one embodiment, the method according to various embodiments disclosed in this document may be provided as included in a computer program product. Computer program products may be traded between sellers and buyers as commodities. The computer program product is distributed in the form of a machine-readable storage medium (eg compact disc read only memory (CD-ROM)), or via an application store (eg Play Store TM ) or on two user devices ( It can be distributed (eg downloaded or uploaded) directly, online between smartphones (eg: smartphones). In the case of online distribution, at least a portion of a computer program product (eg, a downloadable app) is stored at least in a machine-readable storage medium, such as a memory of a manufacturer's server, a server of an application store, or a relay server. It may be temporarily stored or temporarily created.
또한, 본 명세서에서, “부”는 프로세서 또는 회로와 같은 하드웨어 구성(hardware component), 및/또는 프로세서와 같은 하드웨어 구성에 의해 실행되는 소프트웨어 구성(software component)일 수 있다.Also, in this specification, “unit” may be a hardware component such as a processor or circuit, and/or a software component executed by a hardware component such as a processor.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.The description of the present invention described above is for illustration, and those of ordinary skill in the art to which the present invention pertains can understand that it can be easily modified into other specific forms without changing the technical spirit or essential features of the present invention. will be. Therefore, it should be understood that the embodiments described above are illustrative in all respects and not restrictive. For example, each component described as a single type may be implemented in a distributed manner, and likewise components described as distributed may be implemented in a combined form.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.The scope of the present invention is indicated by the following claims rather than the above detailed description, and all changes or modifications derived from the meaning and scope of the claims and their equivalent concepts should be interpreted as being included in the scope of the present invention. do.

Claims (17)

  1. 전자 장치에서 제1 영상을 스케일링하여 제2 영상을 생성하는 방법에 있어서,A method of generating a second image by scaling a first image in an electronic device, the method comprising:
    상기 제1 영상의 각 영역별 특징에 기초하여, 상기 제1 영상에 포함되는 픽셀들과 제2 영상에 포함되는 픽셀들의 상대적인 위치 관계를 결정하는 단계;determining a relative positional relationship between pixels included in the first image and pixels included in a second image based on the characteristics of each region of the first image;
    상기 결정된 상대적인 위치 관계 및 상기 제1 영상에 포함된 픽셀들의 값에 기초하여, 위치 변환 특징 정보를 획득하는 단계; 및obtaining position transformation characteristic information based on the determined relative positional relationship and values of pixels included in the first image; and
    상기 위치 변환 특징 정보와 스케일링 커널과의 컨볼루션 연산을 수행함으로써, 상기 제1 영상을 스케일링한 제2 영상을 생성하는 단계를 포함하는, 방법.and generating a second image in which the first image is scaled by performing a convolution operation between the position transformation feature information and a scaling kernel.
  2. 제1항에 있어서, 상기 각 영역별 특징은,According to claim 1, wherein the characteristics of each area,
    상기 각 영역별 주파수 특성을 포함하는, 방법.Including frequency characteristics for each region, the method.
  3. 제1항에 있어서, 상기 상대적인 위치 관계는The method of claim 1, wherein the relative positional relationship is
    상기 제1 영상의 적어도 하나의 픽셀과, 제1 커널과의 컨볼루션 연산이 수행된 결과에 기초하여, 결정되는, 방법.The method is determined based on a result of performing a convolution operation between at least one pixel of the first image and a first kernel.
  4. 제3항에 있어서, 상기 스케일링 커널의 각각의 가중치 값들에 적용될 적어도 하나의 보상 가중치 값은The method of claim 3, wherein at least one compensation weight value to be applied to each weight value of the scaling kernel is
    상기 제1 영상의 적어도 하나의 픽셀 및 상기 제1 커널과의 컨볼루션 연산이 수행된 결과와, 제3 커널과의 컨볼루션 연산이 수행된 결과에 기초하여, 결정되는, 방법.The method is determined based on a result of performing a convolution operation with at least one pixel of the first image and the first kernel and a result of performing a convolution operation with a third kernel.
  5. 제1항에 있어서,According to claim 1,
    상기 제1 영상의 각 영역별 특징에 기초하여, 상기 스케일링 커널에 포함된 각각의 가중치 값들에 적용될 적어도 하나의 보상 가중치 값을 결정하는 단계; 및determining at least one compensation weight value to be applied to each weight value included in the scaling kernel based on the characteristics of each region of the first image; and
    상기 적어도 하나의 보상 가중치 값을 상기 스케일링 커널의 적어도 하나의 가중치 값에 적용시키는 단계를 더 포함하고,applying the at least one compensation weight value to the at least one weight value of the scaling kernel;
    상기 적어도 하나의 보상 가중치 값이 적용된 상기 스케일링 커널에 기초하여, 상기 제2 영상이 생성되는, 방법.The second image is generated based on the scaling kernel to which the at least one compensation weight value is applied.
  6. 제5항에 있어서, 상기 적어도 하나의 보상 가중치 값은6. The method of claim 5, wherein the at least one compensation weight value is
    상기 제1 영상의 적어도 하나의 픽셀과, 제2 커널과의 컨볼루션 연산이 수행된 결과에 기초하여, 결정되는, 방법.The method is determined based on a result of performing a convolution operation between at least one pixel of the first image and a second kernel.
  7. 제1항에 있어서, 상기 상대적인 위치 관계를 결정하는 단계는The method of claim 1, wherein determining the relative positional relationship comprises:
    상기 제1 영상의 각 영역별 특징에 기초하여, 상기 제2 영상에 포함되는 하나의 픽셀의 위치에 대한 상기 제1 영상에 포함되는 n개의 픽셀들의 상대적인 위치 관계를 결정하는 단계를 포함하고,determining the relative positional relationship of n pixels included in the first image with respect to the position of one pixel included in the second image based on the characteristics of each region of the first image,
    상기 n개의 픽셀들은, 상기 하나의 픽셀 값을 획득하기 위하여, 이용되는, 픽셀들인, 방법.wherein the n pixels are pixels used to obtain the one pixel value.
  8. 제7항에 있어서, 8. The method of claim 7,
    상기 제1 영상과 상기 제2 영상을 동일한 크기로 가정하여, 상기 제1 영상에 포함되는 픽셀들의 위치를 인덱스 i(i= 정수)로 나타내고, 상기 제2 영상에 포함되는 픽셀들의 위치를 인덱스 j(j=실수)로 나타내며, Assuming that the first image and the second image have the same size, positions of pixels included in the first image are denoted by index i (i=integer), and positions of pixels included in the second image are denoted by index j (j = real number),
    상기 상대적인 위치 관계를 결정하는 단계는The step of determining the relative positional relationship is
    상기 하나의 픽셀이 나타내는 인덱스 값에 버림 연산을 수행하여, k j(k j=정수)를 결정하고, 상기 제1 영상의 각 영역별 특징에 기초하여, 상기 k j 에 대응하는 상기 제1 영상의 픽셀에 대한 n개의 오프셋 값을 획득하는 단계; 및 k j (k j = integer) is determined by performing a discard operation on the index value indicated by the one pixel , and the first image corresponding to k j based on the characteristics of each region of the first image obtaining n offset values for pixels of ; and
    상기 n개의 오프셋 값에 기초하여, 상기 n개의 픽셀들을 식별하는 단계를 포함하는, 방법.based on the n offset values, identifying the n pixels.
  9. 제1 영상을 스케일링하여 제2 영상을 생성하는 전자 장치에 있어서,An electronic device for generating a second image by scaling a first image, the electronic device comprising:
    상기 제1 영상을 저장하는 메모리; 및 a memory for storing the first image; and
    상기 제1 영상의 각 영역별 특징에 기초하여, 상기 제1 영상에 포함되는 픽셀들과 제2 영상에 포함되는 픽셀들의 상대적인 위치 관계를 결정하고,determining a relative positional relationship between pixels included in the first image and pixels included in a second image based on the characteristics of each region of the first image;
    상기 결정된 상대적인 위치 관계 및 상기 제1 영상에 포함된 픽셀들의 값에 기초하여, 위치 변환 특징 정보를 획득하고,Based on the determined relative positional relationship and the values of pixels included in the first image, position transformation characteristic information is obtained,
    상기 위치 변환 특징 정보와 스케일링 커널과의 컨볼루션 연산을 수행함으로써, 상기 제1 영상을 스케일링한 제2 영상을 생성하는 적어도 하나의 프로세서를 포함하는, 전자 장치.and at least one processor configured to generate a scaled second image of the first image by performing a convolution operation between the position transformation feature information and a scaling kernel.
  10. 제9항에 있어서, 상기 각 영역별 특징은,10. The method of claim 9, wherein the characteristics of each area,
    상기 각 영역별 주파수 특성을 포함하는, 전자 장치.An electronic device including frequency characteristics for each region.
  11. 제9항에 있어서, 상기 상대적인 위치 관계는10. The method of claim 9, wherein the relative positional relationship
    상기 제1 영상의 적어도 하나의 픽셀과, 제1 커널과의 컨볼루션 연산이 수행된 결과에 기초하여, 결정되는, 전자 장치.The electronic device is determined based on a result of performing a convolution operation between at least one pixel of the first image and a first kernel.
  12. 제11항에 있어서, 상기 스케일링 커널의 각각의 가중치 값들에 적용될 적어도 하나의 보상 가중치 값은The method of claim 11 , wherein at least one compensation weight value to be applied to each weight value of the scaling kernel is
    상기 제1 영상의 적어도 하나의 픽셀 및 상기 제1 커널과의 컨볼루션 연산이 수행된 결과와, 제3 커널과의 컨볼루션 연산이 수행된 결과에 기초하여, 결정되는, 전자 장치.The electronic device is determined based on a result of performing a convolution operation with at least one pixel of the first image and the first kernel and a result of performing a convolution operation with a third kernel.
  13. 제9항에 있어서, 상기 적어도 하나의 프로세서는10. The method of claim 9, wherein the at least one processor comprises:
    상기 제1 영상의 각 영역별 특징에 기초하여, 상기 스케일링 커널에 포함된 각각의 가중치 값들에 적용될 적어도 하나의 보상 가중치 값을 결정하고,determining at least one compensation weight value to be applied to each weight value included in the scaling kernel based on the characteristics of each region of the first image,
    상기 적어도 하나의 보상 가중치 값을 상기 스케일링 커널의 적어도 하나의 가중치 값에 적용시키고,applying the at least one compensation weight value to the at least one weight value of the scaling kernel;
    상기 적어도 하나의 보상 가중치 값이 적용된 상기 스케일링 커널에 기초하여, 상기 제2 영상이 생성되는, 전자 장치.The second image is generated based on the scaling kernel to which the at least one compensation weight value is applied.
  14. 제13항에 있어서, 상기 적어도 하나의 보상 가중치 값은14. The method of claim 13, wherein the at least one compensation weight value is
    상기 제1 영상의 적어도 하나의 픽셀과, 제2 커널과의 컨볼루션 연산이 수행된 결과에 기초하여, 결정되는, 전자 장치.The electronic device is determined based on a result of performing a convolution operation between at least one pixel of the first image and a second kernel.
  15. 제9항에 있어서, 상기 적어도 하나의 프로세서는10. The method of claim 9, wherein the at least one processor is
    상기 제1 영상의 각 영역별 특징에 기초하여, 상기 제2 영상에 포함되는 하나의 픽셀의 위치에 대한 상기 제1 영상에 포함되는 n개의 픽셀들의 상대적인 위치 관계를 결정하고,determining a relative positional relationship of n pixels included in the first image with respect to the position of one pixel included in the second image based on the characteristics of each region of the first image,
    상기 n개의 픽셀들은, 상기 하나의 픽셀 값을 획득하기 위하여, 이용되는, 픽셀들인, 전자 장치.wherein the n pixels are pixels that are used to obtain the one pixel value.
  16. 제15항에 있어서, 상기 제1 영상과 상기 제2 영상을 동일한 크기로 가정하여, 상기 제1 영상에 포함되는 픽셀들의 위치를 인덱스 i(i= 정수)로 나타내고, 상기 제2 영상에 포함되는 픽셀들의 위치를 인덱스 j(j=실수)로 나타내며, The method of claim 15 , wherein, assuming that the first image and the second image have the same size, positions of pixels included in the first image are indicated by an index i (i=integer), and are included in the second image. The positions of pixels are denoted by index j (j = real number),
    상기 적어도 하나의 프로세서는,the at least one processor,
    상기 하나의 픽셀이 나타내는 인덱스 값에 버림 연산을 수행하여, k j(k j=정수)를 결정하고, 상기 제1 영상의 각 영역별 특징에 기초하여, 상기 k j 에 대응하는 상기 제1 영상의 픽셀에 대한 n개의 오프셋 값을 획득하고, k j (k j = an integer) is determined by performing a discard operation on the index value indicated by the one pixel , and the first image corresponding to k j based on the characteristics of each region of the first image to obtain n offset values for the pixels of
    상기 n개의 오프셋 값에 기초하여, 상기 n개의 픽셀들을 식별하는, 전자 장치.identify the n pixels based on the n offset values.
  17. 제1항 내지 제8항 중 어느 한 항의 방법을 구현하기 위한 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록 매체.A computer-readable recording medium in which a program for implementing the method of any one of claims 1 to 8 is recorded.
PCT/KR2020/015426 2020-04-29 2020-11-05 Electronic device for scaling image, and operating method therefor WO2021221250A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2020-0052905 2020-04-29
KR1020200052905A KR102484386B1 (en) 2020-04-29 2020-04-29 Electronic device and operating method for scaling image

Publications (1)

Publication Number Publication Date
WO2021221250A1 true WO2021221250A1 (en) 2021-11-04

Family

ID=78332067

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2020/015426 WO2021221250A1 (en) 2020-04-29 2020-11-05 Electronic device for scaling image, and operating method therefor

Country Status (2)

Country Link
KR (1) KR102484386B1 (en)
WO (1) WO2021221250A1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070177816A1 (en) * 2006-01-27 2007-08-02 Samsung Electronics Co., Ltd. Apparatus and method for reducing noise of image sensor
KR101522260B1 (en) * 2015-01-27 2015-05-26 주식회사 칩스앤미디어 Method for scaling a resolution and an apparatus thereof
JP2016139980A (en) * 2015-01-28 2016-08-04 セイコーエプソン株式会社 Image processor, image processing method and display device
KR20170087734A (en) * 2016-01-21 2017-07-31 한국전자통신연구원 Apparatus and method for high resolution image generation using gradient information
KR20180009184A (en) * 2016-07-18 2018-01-26 삼성전자주식회사 Image display device and method for displaying image

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070177816A1 (en) * 2006-01-27 2007-08-02 Samsung Electronics Co., Ltd. Apparatus and method for reducing noise of image sensor
KR101522260B1 (en) * 2015-01-27 2015-05-26 주식회사 칩스앤미디어 Method for scaling a resolution and an apparatus thereof
JP2016139980A (en) * 2015-01-28 2016-08-04 セイコーエプソン株式会社 Image processor, image processing method and display device
KR20170087734A (en) * 2016-01-21 2017-07-31 한국전자통신연구원 Apparatus and method for high resolution image generation using gradient information
KR20180009184A (en) * 2016-07-18 2018-01-26 삼성전자주식회사 Image display device and method for displaying image

Also Published As

Publication number Publication date
KR20210133802A (en) 2021-11-08
KR102484386B1 (en) 2023-01-03

Similar Documents

Publication Publication Date Title
WO2020171582A1 (en) Method for determining watch face image and electronic device therefor
WO2018128422A1 (en) Method and apparatus for processing distortion of fingerprint image
WO2018012945A1 (en) Method and device for obtaining image, and recording medium thereof
WO2020226294A1 (en) Foldable device and method for controlling image capturing by using plurality of cameras
WO2017039321A1 (en) Foldable electronic device including hidden display and information display method thereof
WO2017116024A1 (en) Electronic device having flexible display and method for operating the electronic device
WO2015156465A1 (en) Flexible glass display apparatus and method for controlling the same
WO2018062657A1 (en) Method for displaying an image and an electronic device thereof
WO2018088806A1 (en) Image processing apparatus and image processing method
WO2018066782A1 (en) Mobile terminal
WO2017126874A1 (en) Electronic device
WO2018216868A1 (en) Electronic device and input processing method of input device
WO2019164239A1 (en) Electronic device, image processing method, and computer-readable recording medium
WO2022097862A1 (en) Method of controlling display and electronic device supporting the same
WO2020085643A1 (en) Electronic device and controlling method thereof
WO2019172642A1 (en) Electronic device and method for measuring heart rate
WO2020060004A1 (en) Mobile terminal
WO2020256325A1 (en) Electronic device and method for providing function by using corneal image in electronic device
WO2022158692A1 (en) Electronic device for identifying force touch and method for operating same
WO2018182375A1 (en) Electronic device and method for providing colorable content
WO2020213935A1 (en) Electronic device and method for controlling flexible display
WO2020246859A1 (en) Method for compensating for screen movement of display and electronic device for supporting the same
WO2020171549A1 (en) Apparatus for searching for content using image and method of controlling same
WO2021221250A1 (en) Electronic device for scaling image, and operating method therefor
WO2017142157A1 (en) Mobile terminal and method for controlling the same

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20934221

Country of ref document: EP

Kind code of ref document: A1

DPE1 Request for preliminary examination filed after expiration of 19th month from priority date (pct application filed from 20040101)
NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20934221

Country of ref document: EP

Kind code of ref document: A1