WO2016002068A1 - 画像拡大装置、画像拡大方法、及び監視カメラ、並びにプログラム及び記録媒体 - Google Patents

画像拡大装置、画像拡大方法、及び監視カメラ、並びにプログラム及び記録媒体 Download PDF

Info

Publication number
WO2016002068A1
WO2016002068A1 PCT/JP2014/067912 JP2014067912W WO2016002068A1 WO 2016002068 A1 WO2016002068 A1 WO 2016002068A1 JP 2014067912 W JP2014067912 W JP 2014067912W WO 2016002068 A1 WO2016002068 A1 WO 2016002068A1
Authority
WO
WIPO (PCT)
Prior art keywords
code
value
pixel
image
unit
Prior art date
Application number
PCT/JP2014/067912
Other languages
English (en)
French (fr)
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 三菱電機株式会社
Priority to PCT/JP2014/067912 priority Critical patent/WO2016002068A1/ja
Priority to EP14896387.9A priority patent/EP3166309B1/en
Priority to JP2015556308A priority patent/JP6207634B2/ja
Priority to PCT/JP2014/081210 priority patent/WO2016002099A1/ja
Priority to US15/323,684 priority patent/US9779477B2/en
Publication of WO2016002068A1 publication Critical patent/WO2016002068A1/ja

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/4053Scaling of whole images or parts thereof, e.g. expanding or contracting based on super-resolution, i.e. the output image resolution being higher than the sensor resolution
    • 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/4007Scaling of whole images or parts thereof, e.g. expanding or contracting based on interpolation, e.g. bilinear interpolation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/66Remote control of cameras or camera parts, e.g. by remote control devices
    • H04N23/661Transmitting camera control signals through networks, e.g. control via the Internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/01Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/01Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level
    • H04N7/0135Conversion of standards, e.g. involving analogue television standards or digital television standards processed at pixel level involving interpolation processes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
    • H04N7/183Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast for receiving images from a single remote source

Definitions

  • the present invention relates to an image enlargement apparatus and an image enlargement method for enlarging an input image and generating an output image with higher resolution.
  • the present invention also relates to a surveillance camera provided with the above image enlarging device.
  • the present invention further relates to a program for realizing an image enlargement apparatus or method by a computer, and a recording medium on which the program is recorded.
  • a search vector is generated for each patch formed by dividing an interpolated image, and a high-frequency component corresponding to an index vector having the highest similarity to the search vector Read data from learning database to generate high resolution patches.
  • JP 2003-018398 A paragraphs 0014 to 0017)
  • the present invention has been made to solve the above-described problems, and it is possible to obtain a high-resolution image with high sharpness even if the required storage capacity and circuit scale are small. .
  • the image enlargement apparatus of the present invention A linear interpolation unit that generates an interpolation image by enlarging the input image by linear interpolation;
  • a high-resolution patch generation unit that generates a high-resolution patch by increasing the resolution for each of a plurality of patches that form part of the interpolation image,
  • a pattern discriminating unit that discriminates a pattern of a local region corresponding to each patch of the interpolation image of the input image and outputs a selection code;
  • a coefficient data storage unit that stores a plurality of coefficient data respectively corresponding to a plurality of possible values of the selection code;
  • a coefficient data reading unit that reads coefficient data corresponding to the selection code from a plurality of coefficient data stored in the coefficient data storage unit;
  • the high-resolution patch generation unit generates the high-resolution patch using the coefficient data read from the coefficient data storage unit,
  • the pattern discrimination unit The average value of the pixel values of the pixels in the local region, or the pixel value of the pixel located at the
  • the comparison code is generated by comparing the pixel value of the pixel in the local area corresponding to the patch with the reference value obtained from the local area, and the selection generated based on the comparison code is generated. Since the code selects coefficient data from the coefficient data storage unit, the amount of coefficient data stored in the coefficient data storage unit can be reduced, and a high-resolution image with high sharpness can be obtained.
  • FIG. 1 It is a block diagram which shows the structural example of a monitoring system. It is a block diagram which shows the structural example of the surveillance camera of FIG. It is a block diagram which shows the structural example of the network recorder of FIG. It is a block diagram which shows the structure of the image expansion apparatus of Embodiment 1 of this invention.
  • (A) And (b) is a figure which shows the interpolation image obtained by the expansion by linear interpolation of an input image and an input image.
  • 3 is a block diagram illustrating a configuration of a high-resolution patch generation unit used in the image enlarging apparatus according to Embodiment 1.
  • FIG. It is a figure which shows the arrangement
  • (A) And (b) is a figure which shows the correspondence of the arrangement
  • 3 is a block diagram illustrating a configuration of a pattern determination unit used in the image enlargement apparatus according to Embodiment 1.
  • FIG. 6 is a flowchart illustrating a processing procedure in the image enlargement apparatus according to the first embodiment.
  • FIG. 17 is a flowchart showing details of the pattern determination step in FIG. 16.
  • FIG. 6 shows a matrix of coefficients with the number of rows equal to NL ⁇ NL and the number of columns equal to the number of patches in the group.
  • FIG. 6 shows a matrix of coefficients with the number of rows equal to NH ⁇ NH and the number of columns equal to the number of patches in the group.
  • FIG. 10 is a block diagram illustrating a configuration of a pattern determination unit used in the image enlargement apparatus according to the second embodiment.
  • (A)-(c) is a figure which shows the example of the ternary pattern code production
  • FIG. 17 is a flowchart showing details of processing performed in the pattern determination step of FIG. 16 in the second embodiment. It is a block diagram which shows the structure of the image expansion apparatus of Embodiment 3 of this invention.
  • FIG. 10 is a block diagram illustrating a configuration of a pattern determination unit used in the image enlargement apparatus according to the third embodiment.
  • (A)-(d) is a figure which shows the example of the ternary pattern code production
  • FIG. 17 is a flowchart showing details of a part of the processing performed in the pattern determination step of FIG. 16 in the third embodiment. 17 is a flowchart showing details of another part of the processing performed in the pattern determination step of FIG. 16 in the third embodiment.
  • FIG. 17 is a flowchart showing details of another part of the processing performed in the pattern determination step of FIG. 16 in the third embodiment.
  • (A) And (b) is a figure which shows the structure of the pixel group which consists of a pixel located in a line direction or a column direction.
  • (A) to (c) are diagrams showing the relationship between the input and output of the code conversion unit of FIG. 30,
  • (d) is a diagram showing the reference numerals attached to the peripheral pixels of each patch, and (e) is the peripheral It is a figure which shows the code
  • FIG. 1 shows a configuration example of a monitoring system including a monitoring camera according to Embodiment 1 of the present invention.
  • the monitoring system includes a monitoring camera 10 and a network recorder 20.
  • the monitoring camera 10 and the network recorder 20 are connected to each other via a network 30.
  • An image obtained by photographing the monitoring target area by the monitoring camera 10 is transmitted through the network 30, recorded in the network recorder 20, and displayed on the monitor 40.
  • FIG. 2 shows a configuration example of the monitoring camera 10 of FIG.
  • the illustrated monitoring camera 10 includes a photographing unit 11, an image input unit 12, an image processing unit 13, an image scaler 14, an image encoding unit 15, and a line I / F unit 16.
  • the imaging unit 11 captures a monitoring target area and obtains an image.
  • An image obtained by the imaging unit 11 is input to the image input unit 12.
  • the image input unit 12 performs processing such as A / D conversion on the input image from the photographing unit 11 and outputs the processed image to the image processing unit 13.
  • the image processing unit 13 outputs the image supplied from the image input unit 12. Image processing is performed to obtain a processed image D13.
  • Image processing performed by the image processing unit 13 includes signal level correction such as gamma correction, color correction, white balance processing, noise reduction processing, flicker correction, sensitization processing, image composition processing, edge enhancement, rendering processing, and the like. .
  • the image processing unit 13 performs image processing by combining one or more of the above processes. Further, the image processing unit 13 may perform well-known image processing other than the above alone or in combination with the above processing.
  • the image scaler 14 enlarges the processed image D13 by super-resolution processing to generate a high-resolution image D14 and outputs the high-resolution image D14 to the image encoding unit 15.
  • the image encoding unit 15 performs JPEG, H.264, and the like on the high resolution image D14.
  • the image data is compressed by an image encoding method such as H.264, MPEG-2, or MPEG-4, and the video stream D15 is output to the line I / F unit 16.
  • the line I / F unit 16 multiplexes other data such as audio data into the video stream D15, performs processing such as packetization, and transmits the multiplexed stream DS to the network 30.
  • FIG. 3 shows a configuration example of the network recorder 20 of FIG.
  • the illustrated network recorder 20 includes a line I / F unit 21, a recording / playback unit 22, a storage device 23, an image decoding unit 24, an image scaler 25, and a display image generation unit 26.
  • the line I / F unit 21 separates a video stream, audio data, and the like from the multiplexed stream DS received via the network 30 and outputs it to the recording / reproducing unit 22.
  • the recording / reproducing unit 22 records the separated data in the storage device 23.
  • the recording / reproducing unit 22 also outputs the video stream input from the line I / F unit 21 or the video stream read from the storage device 23 to the image decoding unit 24.
  • the image decoding unit 24 uses JPEG, H.264, and so on.
  • the image data compressed by an image encoding method such as H.264, MPEG-2, or MPEG-4 is expanded, and the decoded image D24 is output to the image scaler 25.
  • the image scaler 25 performs an enlargement process by super-resolution processing on the decoded image D24, generates a high-resolution image D25, and outputs it to the display image generation unit 26.
  • the display image generation unit 26 converts the image data into a format that can be displayed on the monitor 40, and outputs it to the monitor 40.
  • the monitor 40 displays an image according to the image data from the display image generation unit 26.
  • both the image scaler 14 of the monitoring camera 10 and the image scaler 25 of the network recorder 20 may perform image enlargement, or only one may perform image enlargement.
  • the image scaler 14 of the monitoring camera 10 does not perform image enlargement, but the image scaler 25 of the network recorder 20 performs image enlargement.
  • the image scaler 25 is not provided, the image may be enlarged by the image scaler 14 of the monitoring camera 10.
  • FIG. 4 shows an image enlargement apparatus 50 that can be used as the image scaler 14 of FIG. 2 and the image scaler 25 of FIG.
  • the image enlarging device 50 is used as the image scaler 14
  • the processed image D13 is supplied as the input image Din
  • the output image Dout is output as the high resolution image D14.
  • the image enlarging device 50 is used as the image scaler 25
  • the decoded image D24 is supplied as the input image Din
  • the output image Dout is output as the high resolution image D25.
  • the enlargement ratio by the image enlargement apparatus 50 is “2” in both the horizontal direction and the vertical direction.
  • the luminance component of the processed image D13 or the decoded image D24 is set as the input image Din, and an enlargement process by super-resolution processing is performed on this.
  • the present invention is not limited to this, and the same processing can be performed for color difference components. For example, when the image is represented by data for each color component of red, green, and blue, enlargement by super-resolution processing may be performed for each color component.
  • 4 includes a linear interpolation unit 52, a high-resolution patch generation unit 54, a patch averaging unit 55, a pattern determination unit 56, a coefficient data storage unit 57, and a coefficient data reading unit 58. And have.
  • the linear interpolation unit 52 enlarges the input image Din by linear interpolation to generate a low-resolution enlarged image, that is, an interpolation image D52.
  • the interpolated image D52 is also referred to as a “low-resolution enlarged image” in contrast to a high-resolution image described later.
  • the high resolution patch generation unit 54 cuts out a plurality of patches (interpolation image patches) each forming a part of the interpolation image D52, increases the resolution of each patch, and generates a corresponding high resolution patch. By generating a high-resolution patch, the pixel values of the pixels constituting the patch are obtained.
  • the patch averaging unit 55 averages the pixel values of the pixels obtained by generating each of the one or more high-resolution patches for each pixel of the high-resolution image, thereby obtaining the pixel value of the pixel in the output image. Generate.
  • the pattern discriminating unit 56 discriminates the feature of the local area corresponding to each patch of the interpolation image D52 in the input image Din, and generates a selection code D56 based on the discrimination result.
  • the pattern discriminating unit 56 uses the average value of the pixel values of the pixels in the local region or the pixel value of the pixel located at the center of the local region as a reference value, and surroundings other than the pixel located at the center. The pixel value of the pixel is compared with the reference value, and a selection code is generated based on the comparison result.
  • the coefficient data storage unit 57 stores a plurality of coefficient data respectively corresponding to a plurality of different patterns.
  • Each coefficient data includes data representing a set of coefficients, and in that sense, may also be referred to as coefficient set data.
  • the coefficient data reading unit 58 reads the coefficient data corresponding to the selection code from the plurality of coefficient data stored in the coefficient data storage unit 57, and outputs the selected coefficient data.
  • the high resolution patch generation unit 54 uses the coefficient data read from the coefficient data storage unit 57 to generate a high resolution patch.
  • the linear interpolation unit 52 enlarges the input image Din shown in FIG. 5A by linear interpolation, and generates an interpolation image D52 shown in FIG.
  • the enlargement ratio of the linear interpolation is the same as the enlargement ratio of the image enlargement apparatus 50, and is “2” for each of the horizontal direction and the vertical direction, for example.
  • each of the circles represents one pixel.
  • Interpolation of an image is performed by, for example, a bicubic method.
  • pixels indicated by black circles are pixels located at positions corresponding to the pixels of the input image Din shown in FIG.
  • the position in the input image Din is represented by coordinates (p, q).
  • p is a value in units of one pixel pitch in the horizontal direction (interval between adjacent pixels)
  • q is a value in units of one pixel pitch in the vertical direction in the input image Din.
  • the position in the interpolation image D52 is represented by coordinates (x, y).
  • x is a value in units of one pixel pitch in the horizontal direction in the interpolated image D52
  • y is a value in units of one pixel pitch in the vertical direction in the interpolated image D52.
  • x and y are integer values.
  • the high-resolution patch generation unit 54 cuts out a plurality of patches (interpolation image patches) LPc each forming a part of the interpolation image D52 from the interpolation image D52, increases the resolution of each of the cut-out patches LPc, and responds.
  • the high resolution patch data includes data representing the pixel values of the pixels constituting the patch.
  • a high-resolution image D54 is composed of a combination of a plurality of high-resolution patches.
  • the high-resolution image D54 has the same number of pixels in the horizontal and vertical directions as the interpolation image D52, and the pixel arrangement in the high-resolution image D54 is the same as the pixel arrangement in the interpolation image D52 shown in FIG. It is.
  • the high-resolution patch generation unit 54 includes a feature component separation unit 62, a high-resolution conversion unit 64, and a feature component synthesis unit 66, as shown in FIG.
  • the feature component separation unit 62 cuts out a plurality of patches (interpolated image patches) LPc each forming a part of the interpolated image D52 from the interpolated image D52, and converts each pixel value of the cut out patches to the feature component of the interpolated image patch ( It is separated into a low resolution feature component (D62H) and an interpolation image patch feature component (low resolution non-feature component) D62L.
  • D62H low resolution feature component
  • D62L interpolation image patch feature component
  • Each patch LPc is a rectangular area composed of NL ⁇ NL pixels, for example, as shown in FIG. NL is, for example, 5, and both the pitch of the patch in the horizontal direction (distance between the centers of the patches) LPPh and the pitch of the patch in the vertical direction (distance between the centers of the patches) LPPv are both 2 pixel pitches. There is an overlap of 3 pixels in the horizontal direction between patches adjacent in the direction, and there is an overlap of 3 pixels in the vertical direction between patches adjacent in the vertical direction.
  • the feature component separation unit 62 obtains an average value lMean of NL ⁇ NL pixels in the patch and outputs it as a non-feature component D62L, and calculates the average value from the pixel value of each pixel.
  • NL ⁇ NL difference values obtained by subtracting 1Mean are used as feature amounts, and a column vector obtained by arranging the feature amounts in a predetermined order is output as a feature component D62H.
  • the pixels P (1) to P (25) are taken out in the order indicated by their numbers (numerical values in parentheses), and their difference values dl 1 to dl 25 are obtained.
  • a feature quantity as shown in FIG. 8B, a column vector is formed by arranging in order from the top. Since the feature component D62H is obtained by subtracting the average value from the pixel value of each pixel, it can be said that the feature component D62H is a high-frequency component of the patch, and the non-feature component D62L is a low-frequency component of the patch.
  • the high resolution conversion unit 64 converts the low resolution feature component D62H into the high resolution feature component D64H using the coefficient data D58 selected by the coefficient data reading unit 58. This conversion is a conversion from the feature component of the patch of the interpolated image (low-resolution enlarged image) to the feature component of the corresponding patch of the high-resolution image.
  • corresponding with respect to “position” means that the pixel position at the center of the patch of the high-resolution image is the same as the pixel position at the center of the patch of the interpolation image, in other words, It means a position where the pixel position of the center of the patch of the high-resolution image matches the pixel position of the center of the patch of the interpolation image when they are overlapped so that their peripheral edges coincide with each other.
  • a patch pair is composed of the patch of the interpolation image and the patch of the high resolution image having the centers at the positions corresponding to each other.
  • each patch HPc is a rectangular region including, for example, NH ⁇ NH pixels.
  • NH is 3
  • the patch pitch HPPh in the horizontal direction and the patch pitch HPPv in the vertical direction are both 2 pixels, and therefore there is an overlap of 1 pixel in the horizontal direction between patches adjacent in the horizontal direction.
  • the coefficient data D58 represents the relationship between the characteristic part value D62H of each patch LPc of the interpolated image and the characteristic component value D64H of the corresponding patch HPc of the high resolution image, and is supplied from the coefficient data reading unit 58.
  • the coefficient data D58 are represented by NH
  • conversion by the high resolution conversion unit 64 is expressed by the following equation (1).
  • equation (1) can be rewritten using a matrix to obtain equation (2) below.
  • the left side of the expression (2) is obtained by taking out the pixels Q (1) to Q (9) shown in FIG. 10 in the order indicated by their numbers (numerical values in parentheses), and their difference values dh 1 to dh. 9 are arranged in order from the top.
  • the pixels Q (1) to Q (9) shown in FIG. 10 are the 3 ⁇ 3 positions in the center of the pixels shown in FIG. 8A, that is, P (7), P ( 8), P (9), P (12), P (13), P (14), P (17), P (18), and P (19).
  • Equations (1) and (2) indicate that the value of each pixel of the high-resolution feature component D64H is given by weighted addition to all NL ⁇ NL pixels of the low-resolution feature component D62H. .
  • the matrix M is a matrix composed of the coefficients represented by the coefficient data D58 selected by the coefficient data reading unit 58.
  • the coefficient data reading unit 58 selects one coefficient data from the plurality of coefficient data D57 stored in the coefficient data storage unit 57 and supplies the selected coefficient data to the high resolution conversion unit 64.
  • Each of the plurality of coefficient data stored in the coefficient data storage unit 57 represents a relationship between a pair of the feature component D62H of the interpolation image generated from the teacher image and the feature component D64H of the high-resolution image. The generation method will be described later.
  • the conversion from the low resolution feature component D62H to the high resolution feature component D64H may be nonlinear.
  • coefficient data data giving a coefficient of a nonlinear function is used.
  • the feature component synthesis unit 66 synthesizes the high-resolution feature component D64H and the non-feature component D62L to generate a high-resolution patch HPc.
  • the synthesis by the feature component synthesis unit 66 is expressed by the following equation (3).
  • hp is a column vector having NH ⁇ NH values h 1 to h NH ⁇ NH representing pixel values of the pixels constituting the high resolution patch HPc
  • nhp is a feature component D64H of the high resolution patch
  • Is a column vector having feature component values dh 1 to dh NH ⁇ NH of NH ⁇ NH pixels that constitute Nx
  • lMean is a scalar value representing the non-feature component D62L
  • c is a feature component (high frequency component) of high resolution
  • a scalar value (constant) for adjusting the gain
  • the patches are formed so as to overlap each other, some pixels of the high-resolution image belong to a plurality of patches.
  • the pixel Pxc located at the center of each patch belongs to one patch HPc, and is adjacent to the central pixel Pxc in the horizontal direction and in the vertical direction.
  • the pixel Pxb that belongs to belongs to the two patches HPc, and the pixel Pxd that is adjacent to the central pixel Pxc in the oblique direction belongs to the four patches HPc.
  • two calculation results pixel values obtained for the pixels in the calculation for each patch
  • the expression (3) or (4) are obtained, and belong to the four patches.
  • four results of calculation according to Equation (3) or Equation (4) are obtained.
  • For pixels belonging to only one patch only one calculation result according to the equation (3) or the equation (4) is obtained.
  • the patch averaging unit 55 averages the values of one or more high resolution patches (pixel values of the pixels determined in the generation of each of the one or more high resolution patches) for each pixel of the high resolution image.
  • the pixel value Dout (x, y) of the pixel of the output image Dout is generated. That is, for pixels belonging to two patches, the values of two patches are averaged, for pixels belonging to four patches, the values of four patches are averaged, and for pixels belonging to only one patch, one The patch value is output as it is.
  • the pixel arrangement in the high-resolution image D54 is the same as the pixel arrangement in the interpolation image D52 shown in FIG. 5B, and the position of each pixel in the high-resolution image D54 is coordinate ( x, y), and the pixel value of the pixel is represented by D54 (x, y).
  • (X, y) (xc + u, yc + v)
  • (xc, yc) is a coordinate in the high resolution image D54 of the center pixel of the high resolution patch HPc.
  • the patch averaging unit 55 averages the pixel value D54 (x, y) obtained from one or more high-resolution patches HPc for the pixel at the coordinate (x, y) of the high-resolution image D54, thereby outputting an output image.
  • a pixel value Dout (x, y) of Dout is calculated.
  • the output image Dout is formed by a set of pixels having the pixel value Dout (x, y) obtained as described above. Similar to the high-resolution image D54, the output image Dout has the same number of pixels in the horizontal and vertical directions as the interpolation image D52, and the arrangement of the pixels in the output image Dout is the interpolation image shown in FIG. This is the same as the arrangement of each pixel in D52.
  • the coefficient data storage unit 57 stores a plurality of coefficient data representing the correspondence between the feature components of the interpolation image and the feature components of the high resolution image.
  • the coefficient data is determined corresponding to the pattern of change in pixel value in each part in the image.
  • the pattern discriminating unit 56 determines what pattern each part of the image has.
  • FIG. 11 shows a plurality of coefficient data D57 stored in the coefficient data storage unit 57.
  • a set of coefficients represented by each coefficient data D57 constitutes a matrix M of NH ⁇ NH rows NL ⁇ NL columns used in Formula (1) or Formula (2).
  • NP-1 NP is the number of values that the selection code can take
  • the pattern discriminating unit 56 discriminates the feature of the local area corresponding to each patch of the interpolation image D52 in the input image Din, and generates a selection code D56 based on the discrimination result.
  • the pattern determination unit 56 in FIG. 4 includes a local region extraction unit 71, an in-region average calculation unit 72, a comparison code generation unit 73, and a selection code generation unit 74.
  • the selection code generation unit 74 includes a binary pattern code generation unit 75.
  • the local region extraction unit 71 cuts out a portion corresponding to the patch LPc of the interpolation image from the input image Din as a local region, and outputs data representing the pixel values of the pixels in the cut out local region as an intra-region average calculation unit 72 and
  • the comparison code generation unit 73 is supplied.
  • the local area APc is, for example, a rectangular area composed of NA ⁇ NA pixels.
  • NA is 3
  • the pitch of the local area in the horizontal direction (distance between the centers of the local areas) APPh and the pitch of the local area in the vertical direction (distance between the centers of the local areas) APPv are both 1 pixel pitch. is there.
  • the in-region average calculation unit 72 obtains an average value AVE of the pixel values IN (s, t) of the pixels in each local region APc supplied from the local region extraction unit 71.
  • the average AVE may be a simple average of the pixel values of all the pixels in each local region, or may be a weighted average, for example, a weighted average in which weighting for the central pixel is increased.
  • An example of the calculation for obtaining the weighted average is shown in the following equation (5).
  • the comparison code generation unit 73 is positioned at the average value AVE of the pixel values in each local region output from the intra-region average calculation unit 72 and the center in the local region output from the local region extraction unit 71.
  • a magnitude comparison with the pixel value IN (s, t) of a pixel other than the pixel (peripheral pixel) is performed, and a binary comparison code D (s, t) indicating a comparison result for each peripheral pixel is output. For example, when the pixel value IN (s, t) is less than the average value AVE, the comparison code D (s, t) is set to “0b”, and when the pixel value IN (s, t) is greater than or equal to the average value AVE, the comparison is made.
  • the code D (s, t) is output as “1b”.
  • the generation process of the comparison code D (s, t) is expressed by the following equation (6).
  • the comparison code D (s, t) is set to “0b” in the above example. In this case, the comparison code D (s, t) is set to “0b”. It may be “1b”. In short, the comparison code generation unit 73 either determines whether or not the pixel value IN (s, t) is greater than or equal to the average value AVE and whether or not the pixel value IN (s, t) is equal to or less than the average value AVE. Anything that does. The assignment of the comparison codes “0b” and “1b” may be reversed. In short, the comparison code generation unit 73 only needs to output the first value or the second value according to the determination result.
  • the binary pattern code generation unit 75 generates a binary pattern code Pna by connecting the comparison codes D (s, t) for the eight neighboring pixels generated by the comparison code generation unit 73 for each local region.
  • the binary pattern code Pna generated in this way is a numerical sequence obtained by connecting and connecting the comparison codes D (s, t) in a predetermined order according to the position of the corresponding pixel.
  • FIG. 14A shows the pixel values IN (s, t) of nine pixels in one local region of the input image Din at the positions (s, t) of the respective pixels, and also to the comparison code generation unit 73.
  • the input order of the pixel value IN (s, t) is indicated by a line ARa with an arrow.
  • FIG. 14B shows the pixel values IN (s, t) of nine pixels in one local region in the order of input to the comparison code generation unit 73.
  • the pixel value IN (s, t) is input in order from left to right in FIG.
  • a pixel located at the center of the local region is selected, and its pixel value IN (0, 0) is input.
  • the pixel in the upper left corner is selected and its pixel value IN (-1, -1) is input.
  • peripheral pixels are sequentially selected counterclockwise. Each pixel value is input. Note that the pixel selection order may be clockwise as opposed to that shown in FIG.
  • the pixel selected subsequent to the center pixel may be a pixel other than the pixel at the upper left corner.
  • FIGS. 15A to 15C show an example of comparison by the comparison code generation unit 73 and generation of the binary pattern code Pna by the binary pattern code generation unit 75 performed for one local region.
  • the 3 ⁇ 3 cells correspond to the 3 ⁇ 3 pixels in FIG. 14A, and the numerical value in each cell is the pixel of the pixel at the position of the cell. Represents a value.
  • AVE represents the average value of the 3 ⁇ 3 pixel values shown in the figure, and in the example shown, “115” is calculated as the average value AVE by the in-region average calculation unit 72 and supplied to the comparison code generation unit 73. Yes.
  • the comparison code generation unit 73 compares the average value AVE with the pixel values IN (s, t) of the eight neighboring pixels shown in FIG. 15A, and if each pixel value is equal to or greater than the average value AVE. If “1b” is less than the average value AVE, binarization to “0b” is performed, so that the comparison code D (s, t) shown in FIG. 15B, that is, D ( ⁇ 1, ⁇ 1), D (-1, 0), D (-1, 1), D (0, -1), D (0, 1), D (1, -1), D (1, 0), D (1, 1) are generated and output in order.
  • the output order of the binary comparison code D (s, t) from the comparison code generation unit 73 is as shown by a line ARb with an arrow in FIG.
  • the binary pattern code generation unit 75 arranges the comparison codes D (s, t) that are output from the comparison code generation unit 73 in the order shown in FIG. 15B and connects them in order, as shown in FIG.
  • the comparison code D (-1, 0) is arranged in the second bit, and the comparison code D (s, t) is sequentially arranged counterclockwise as shown by the line ARb with an arrow in FIG. By assigning it to a position, an 8-bit binary pattern code Pna shown in FIG. 15C is generated.
  • the generation of the binary pattern code Pna is expressed by the following equation (7).
  • the binary pattern code Pna determined by the equation (7) is as shown in FIG. 15C. , Corresponding to the decimal number “49”.
  • the binary pattern code Pna generated in this way is output as the selection code D56.
  • the coefficient data storage unit 57 stores the NH ⁇ NH rows used in Expression (1) or Expression (2) for each of the values 0, 1,.
  • a matrix M including elements (coefficients) of NL ⁇ NL columns is stored.
  • the binary pattern code Pna is composed of a combination of binary comparison codes D (s, t) for 8 pixels, that is, an 8-bit binary comparison code
  • the binary pattern code Pna Therefore, the number of values that the selection code D56 can take is 256.
  • the coefficient data storage unit 57 stores 256 pieces of coefficient data.
  • the coefficient data reading unit 58 reads coefficient data corresponding to the binary pattern code Pna (selection code D56) from among the 256 coefficient data D57 stored in the coefficient data storage unit 57, and selects the selected coefficient data. Output as D58.
  • FIG. 16 illustrates a processing procedure in the image enlargement apparatus according to the first embodiment.
  • the linear interpolation unit 52 enlarges the input image Din by the linear interpolation unit 52 and generates an interpolation image D52.
  • the feature component separation unit 62 of the high resolution patch generation unit 54 selects and extracts one of the plurality of patches LPc each forming a part of the interpolation image D52.
  • the selection of patches is performed in raster order, for example, in the order of images from the upper left corner to the lower right corner (from top to bottom, and from left to right at the same height position).
  • step S13 to step S17 the selected patch is processed.
  • step S13 the feature component separation unit 62 converts each interpolated image patch LPc into a low-resolution feature component D62H and a non-feature component D62L.
  • the pattern determination unit 56 determines a pattern using the pixels in the local area APc of the input image Din corresponding to each patch, and generates a selection code D56.
  • the coefficient data read unit 58 reads the coefficient data corresponding to the selection code D56 generated in step S14 from the coefficient data storage unit 57 and outputs it.
  • the high resolution conversion unit 64 applies the coefficient selected in step S15 to the feature component D62H of each patch of the interpolated image obtained in step S13. An operation is performed using the data D58, and conversion from the low resolution feature component D62H to the high resolution feature component D64H is performed.
  • the feature component combining unit 66 combines the non-feature component D62L separated in step S13 with the high-resolution feature component D64H generated in step S16 to generate a high-resolution patch.
  • determination step S18 it is determined whether or not the processing in steps S12 to S17 has been performed for all patches in the image. This determination is performed by, for example, the feature component separation unit 62. If there is a patch that has not yet been processed (NO in step S18), the process returns to step S12 to select the next patch.
  • step S18 the process proceeds to patch averaging step S19, and the patch averaging unit 55 obtains the high resolution patch HPc obtained by the processing for each patch for each pixel of the high resolution image D54. Are averaged, and a pixel value Dout (x, y) of each pixel of the output image Dout is calculated.
  • An output image Dout is formed by a set of pixel values Dout (x, y) calculated in this way.
  • step S19 is immediately performed for the pixel.
  • the process of steps S12 to S17 and the process of step S19 are performed in parallel.
  • the local region extracting unit 71 extracts a local region.
  • the local area APc corresponding to the patch LPc selected from the interpolation image D52 is cut out in step S12, and data of the cut out local area APc is acquired.
  • the intra-region average calculation unit 72 calculates the average value AVE of the pixels in the extracted local region APc.
  • comparison code generation step S23 the comparison code generation unit 73 obtains a binary comparison code D (s, t) for each of the eight peripheral pixels by comparing the pixel value of the pixel with the average value AVE.
  • selection code generation step S24 the selection code generation unit 74 generates a binary pattern code Pna by combining the binary comparison codes D (s, t) for the eight neighboring pixels, and as a selection code Output.
  • the coefficient data D57 represents a pair relationship between the feature component D62H of the interpolated image generated from the teacher image and the feature component D64H of the high-resolution image.
  • the coefficient data storage unit 57 performs learning in advance. Remember me.
  • FIG. 18 shows an apparatus (coefficient data generating apparatus) used for generating coefficient data.
  • the image reduction unit 101 reduces the high-resolution image Dti (FIG. 19A) serving as the teacher image, and reduces the reduced image (low-resolution image) D101 (FIG. 19B). Generate.
  • the resolution of the high resolution image Dti is the same as that of the output image Dout, and the reduction rate of the image reduction performed by the image reduction unit 101 is the same as the enlargement rate of the linear interpolation unit 52.
  • the reduction may be performed by thinning or may be performed by averaging.
  • the pixels of the reduced image D101 in FIG. 19B are at positions corresponding to the pixels indicated by black circles among the pixels of the high resolution image Dti in FIG.
  • the linear interpolation unit 102 enlarges the reduced image D101 (FIG. 19B) by linear interpolation to generate an interpolation image, that is, a low-resolution enlarged image D102 (FIG. 19C).
  • the processing of the linear interpolation unit 102 is the same as the processing of the linear interpolation unit in FIG.
  • the pixels indicated by black circles are pixels at positions corresponding to the pixels of the reduced image D101 shown in FIG.
  • the feature component separation unit 103 cuts out a plurality of patches from the low-resolution enlarged image D102 and extracts feature components of each patch. That is, the feature component separation unit 103 selects a plurality of pixels from the pixels at the positions corresponding to the pixels of the reduced image D101 in the low resolution enlarged image D102 (indicated by black circles in FIG. 19C). A patch LPc having the size of NL ⁇ NL pixels centered on each of the plurality of pixels (similar to LPc in FIG. 7) is cut out, and the NL in the patch is cut out for each of the cut out patches.
  • the average value tlMean of NL pixels is obtained, and the NL ⁇ NL difference values obtained by subtracting the average value tlMean from the pixel value of each pixel are used as feature amounts, and the feature amounts are set in a predetermined order.
  • the column vector obtained by arranging in (3) is output as the feature component D103H.
  • An arrangement in which NL ⁇ NL feature amounts constituting the feature component D103H are arranged in the same manner as corresponding pixels is referred to as a low resolution patch.
  • the feature component separation unit 62 in FIG. 6 cuts out a plurality of patches from the interpolation image D52 at regular intervals so that all the pixels of the interpolation image D52n belong to at least one patch.
  • the feature component separation unit 103 does not have such a restriction regarding patch extraction, and may extract different portions of the low-resolution enlarged image D102 as patches.
  • the patch may be cut out so that all the pixels of the low-resolution enlarged image D102 corresponding to the pixels of the reduced image D101 are sequentially centered on the patch.
  • the pixels of the low-resolution enlarged image D102 corresponding to the pixels of the reduced image D101 The patches may be cut out so that the randomly selected one becomes the center of the patch sequentially.
  • the feature component separation unit 104 cuts out a patch centered on a pixel corresponding to the center pixel of the patch obtained by performing the feature component separation in the feature component separation unit 103 from the high-resolution image Dti. Extract feature components. That is, the feature component separation unit 104 is centered on the pixel corresponding to the center pixel of each patch extracted by the feature component separation unit 103 in the high-resolution image (teacher image) Dti, and each has NL ⁇ NL pixels.
  • a plurality of patches TPc (having the same size as LPc in FIG.
  • the pattern discriminating unit 105 performs pattern discrimination on a local area corresponding to a patch obtained by separating the feature components by the feature component separation unit 103 in the reduced image D101, and indicates a code (pattern) indicating the discrimination result. Discrimination code) D105 is generated. Since this pattern discrimination code D105 corresponds to the selection code D56 of the image enlargement apparatus, it will be referred to as a selection code below.
  • the pattern discrimination by the pattern discrimination unit 105 has the same contents as the processing in the pattern discrimination unit 56 of FIG.
  • a patch (low resolution patch) obtained by separating feature components by the feature component separation unit 103 and a patch (high resolution patch) obtained by separating feature components by the feature component separation unit 104 are both The feature component separation unit 62 has the same size (NL ⁇ NL) as a patch obtained by separating feature components.
  • centering on the pixel of the low resolution enlarged image D102 corresponding to a pixel of the reduced image D101 A pair (patch pair) is formed with the high-resolution patch obtained by separating the feature component by the feature component separation unit 104 with the pixel of the teacher image Dti to be centered.
  • a selection code D105 obtained as a result of pattern discrimination performed by the pattern discrimination unit 105 on the local area centered on the same pixel as that of the reduced image D102 is obtained as a selection code corresponding to the patch pair.
  • the classification unit 106 associates the feature components D103H and D104H of the patches constituting each pair with each other, and classifies (groups) each pair according to the value of the corresponding selection code D105.
  • the classification results are summarized in a table as shown in FIG.
  • the value (value from 0 to 255) of the selection code D56 described for the pattern determination unit 56 is entered in advance.
  • the pair number column a pair number (all indicated by “xx” but its value is different) corresponding to the selection code D105 is entered.
  • the pair number data representing the coordinates of the center pixel of the patch constituting the pair may be used.
  • each value of the selection code and the corresponding pair number are stored in association with each other.
  • the calculation unit 107 derives a coefficient value for approximating the relationship between the low resolution patch and the high resolution patch for each group having the same value of the selection code D105 by linear regression calculation. This calculation is expressed by Expression (8).
  • Ms is a matrix (coefficient matrix) composed of elements (coefficients) of NL ⁇ NL rows NL ⁇ NL columns corresponding to the selected code of the group
  • Xt is an NL ⁇ NL feature quantity constituting the feature component D103H of the low-resolution patch constituting the pair classified in the group, that is, the difference value is arranged in the column direction, and the patches are different from each other.
  • Yt is a patch that is different from each other by arranging the NL ⁇ NL feature amounts constituting the feature component D104H of the high resolution patch constituting the group classified in the group, that is, the difference values in the column direction.
  • Xt T and Yt T are transposed matrices of Xt and Yt, respectively. When the number of patches in each group is less than (NL ⁇ NL), a unit matrix is output as Ms.
  • the coefficient data extraction unit 108 from the matrix Ms of NL ⁇ NL rows NL ⁇ NL columns obtained as described above, elements (NH ⁇ NH elements) corresponding to NH ⁇ NH pixels constituting the high resolution patch HPc.
  • the coefficient M storage unit 57 extracts the matrix M of NH ⁇ NH rows NL ⁇ NL columns from which only the characteristic component D64H of the pixel is extracted) and uses the data representing the extracted matrix M as coefficient data D57.
  • FIG. 24 shows NH ⁇ NH rows (9 rows) extracted from the matrix Ms of (25 columns).
  • pixels in the patch composed of NL ⁇ NL pixels are denoted by reference signs P (1) to P (25).
  • P (1) to P (25) the numerical value in parentheses is the number assigned to the pixel.
  • NH ⁇ NH pixels constituting the high-resolution patch HPc are pixels within a portion surrounded by a thick line HPc, and are shown in FIG. This corresponds to NH ⁇ NH pixels Q (1) to Q (9).
  • Pixels (P (7), P (8), P (9), P (12), P (13), P (14), P (17), P (18), P) in the enclosed area Rows R (7), R (8), R (9), R (12), R (13), R (14), R (17), R (18), R (19) corresponding to (19) )).
  • coefficient data corresponding to one selection code is generated and stored in the coefficient data storage unit 57.
  • the above processing is performed for each of the 256 values of the selection code, and the coefficient data storage unit 57 stores the coefficient data D57 corresponding to each of the 256 values of the selection code.
  • the coefficient data generation method described above is for the case where the conversion by the high resolution conversion unit 64 is linear, but the coefficient data can be calculated using a known optimization method even when the conversion is nonlinear. Is possible.
  • the above is the description of the coefficient data generation method.
  • the comparison code generation unit 73 uses the average value AVE calculated by the intra-region average calculation unit 72 to compare with the pixel values of the surrounding pixels using the comparison code generation unit 73.
  • the pixel value IN (0, 0) of the central pixel may be compared with the pixel values of the peripheral pixels.
  • the comparison code generation unit 73 may compare the pixel values of the peripheral pixels with the average value AVE or the pixel value IN (0, 0) of the central pixel as a reference value.
  • the pixel value of the center pixel can also be regarded as a value obtained by setting the weight of the peripheral pixels to zero in the weighted average and using the pixel value IN (0, 0) of the center pixel as the average value AVE. .
  • the reference value obtained from each local area of the input image is compared with the surrounding pixels in the local area, and the binary comparison code D obtained as a result of the comparison is compared.
  • a binary pattern code Pna is generated by combining (s, t), and coefficient data is read out using the binary pattern code Pna as a selection code.
  • There are 2 8 256 sets of binary comparison codes D (s, t) for the eight neighboring pixels, and therefore the binary pattern code Pna represents one of 256 values.
  • the coefficient data storage unit 57 stores 256 pieces of coefficient data (each including data representing a set of coefficients), and outputs corresponding coefficient data in accordance with the binary pattern code Pna.
  • the number of coefficient data that needs to be stored in the coefficient data storage unit 57 can be reduced to 256. Therefore, the storage capacity of the coefficient data storage unit 57 can be reduced, and the circuit scale can be reduced. By reducing the storage capacity and the circuit scale, it is possible to reduce the chip size when the coefficient data storage unit 57 is configured by an integrated circuit. By reducing the chip size, power consumption can be reduced.
  • Embodiment 2 has the following problems. That is, the average value of each local area or the pixel value of the central pixel is used as a reference value and compared with the pixel values of surrounding pixels, and the comparison result is expressed by a binary comparison code D (s, t). Coefficient data is read with the binary pattern code Pna obtained by combining the codes as the selection code D56. For this reason, even when the pixel values of the surrounding pixels are close to the reference value, it is determined whether or not it is larger than the reference value, a binary pattern code is generated based on the determination result, and the generated binary pattern code Select coefficient data with. Therefore, when the peripheral pixels are close to the reference value (average value or pixel value of the central pixel), the coefficient data that is not necessarily appropriate is used, and the image quality of the output image may be deteriorated.
  • D binary comparison code
  • the comparison result between the reference value obtained from each local region and the pixel values of the peripheral pixels is represented by a ternary comparison code, which is obtained by combining the ternary comparison codes. Coefficient data is selected using the value pattern code.
  • the ternary comparison code indicates whether the pixel values of the surrounding pixels are about the same as the reference value (the difference is small), not about the same, larger than the reference value, not about the same, and smaller than the reference value. Depending on, it takes one of three values.
  • the coefficient data storage unit stores this number of coefficient data. By doing in this way, compared with Embodiment 1, degradation of a high resolution image can be suppressed.
  • FIG. 25 shows an image enlargement apparatus 50b according to the second embodiment.
  • the illustrated image enlargement apparatus 50b can be used in place of the image enlargement apparatus 50 of the first embodiment, and includes a linear interpolation unit 52, a high resolution patch generation unit 54, a pattern determination unit 56b, and a coefficient data storage unit 57b. And a coefficient data reading unit 58b and a patch averaging unit 55.
  • the linear interpolation unit 52, the high resolution patch generation unit 54, and the patch averaging unit 55 are the same as those in the first embodiment.
  • the pattern determination unit 56b includes a local region extraction unit 71, an intra-region average calculation unit 72, a comparison code generation unit 83, and a selection code generation unit 84.
  • the selection code generation unit 84 includes a ternary pattern code generation unit 85.
  • the local region extraction unit 71 and the intra-region average calculation unit 72 are the same as those described with reference to FIG.
  • the comparison code generation unit 83 outputs an average value AVE of the pixel values in each local region output from the intra-region average calculation unit 72 and pixels of peripheral pixels in the local region output from the local region extraction unit 71.
  • a magnitude comparison with the value IN (s, t) is performed, and a ternary comparison code T (s, t) indicating the comparison result for each peripheral pixel is output.
  • Each comparison code T (s, t) is represented by 2 bits.
  • the comparison code T (s, t) is set to “00b”, and the pixel value IN (s , t) is greater than the average value AVE and the absolute value of the difference is equal to or greater than the threshold value ⁇ , the comparison code T (s, t) is set to “10b”, and the pixel value IN (s, t) is averaged
  • the comparison code T (s, t) is set to “01b”.
  • the generation process of the comparison code T (s, t) is expressed by the following equation (9).
  • the assignment of the comparison code is not limited to the above example, and for example, “11b” may be used as the comparison code.
  • the assignment of the comparison codes “0b” and “1b” may be reversed.
  • the comparison code generation unit 83 only needs to output the first value, the second value, or the third value according to the determination result.
  • the ternary pattern code generation unit 85 generates a ternary pattern code Pnb by connecting the comparison codes T (s, t) for the eight neighboring pixels generated by the comparison code generation unit 83 for each local region.
  • the ternary pattern code Pnb generated in this way is a numerical sequence obtained by connecting the comparison codes T (s, t) in a predetermined order according to the position of the corresponding pixel.
  • 27A to 27C show an example of comparison by the comparison code generation unit 83 and generation of the ternary pattern code Pnb by the ternary pattern code generation unit 85, which is performed for one local region. .
  • the comparison code generation unit 83 compares the average value AVE with the pixel values IN (s, t) of the eight neighboring pixels shown in FIG. 27A, and compares the three values shown in FIG. Code T (s, t), that is, T (-1, -1), T (-1, 0), T (-1, 1), T (0, -1), T (0, 1), T (1, ⁇ 1), T (1, 0), and T (1, 1) are generated and output in order.
  • the output order of the ternary comparison code T (s, t) from the comparison code generator 83 is as shown by a line ARc with an arrow in FIG.
  • the pixel comparison code T ( ⁇ 1, 0) of the third bit is the third and fourth bits, and thereafter, as indicated by the arrowed line ARc in FIG.
  • a 16-bit ternary pattern code Pnb shown in FIG. 27C is generated.
  • the generation of the ternary pattern code Pnb is expressed by the following equation (10).
  • the ternary pattern code Pnb determined by the equation (10) is as shown in FIG. , Corresponding to the decimal number “17926”.
  • the ternary pattern code Pnb generated in this way is output as the selection code D56b.
  • the coefficient data storage unit 57b stores coefficient data corresponding to all values that can be taken by the ternary pattern code Pnb (accordingly, the selection code D56b).
  • the ternary pattern code Pnb is composed of combinations of the ternary comparison codes T (s, t) for 8 pixels as in the above example, the values of the ternary pattern code Pnb and therefore the possible values of the selection code D56b are set.
  • the number is 6561. In this case, 6561 pieces of coefficient data are stored in the coefficient data storage unit 57b.
  • the coefficient data reading unit 58b reads coefficient data corresponding to the ternary pattern code Pnb (selection code D56b) from among the 6561 pieces of coefficient data stored in the coefficient data storage unit 57b, and selects the selected coefficient data. Output.
  • the high resolution patch generation unit 54 generates a high resolution patch HPc for each patch LPc of the interpolation image D52 using the coefficient data D58b read by the coefficient data reading unit 58b.
  • the patch averaging unit 55 averages the pixel values Dout of the output image Dout by averaging the pixel values of the plurality of high resolution patches HPc for each pixel of the high resolution image D54. Calculate (x, y).
  • the operation of the second embodiment is generally the same as that described with reference to FIG. 16 regarding the first embodiment.
  • the process shown in FIG. 28 is performed instead of the process shown in FIG. Steps S21 and S22 in FIG. 28 are the same as those in FIG.
  • the comparison code generation unit 83 obtains a ternary comparison code T (s, t) for each of the eight peripheral pixels by comparing the pixel value of the pixel with the average value AVE.
  • the selection code generation unit 84 generates a ternary pattern code Pnb by combining the ternary comparison codes T (s, t) for the eight neighboring pixels, and outputs it as the selection code D56b. .
  • the same device as shown in FIG. 18 can be used to generate the coefficient data stored in the coefficient data storage unit 57b.
  • the pattern discriminating unit 105 it is necessary to use the same one as the pattern discriminating unit 56b of FIG. 26 instead of the same one as the pattern discriminating unit 56 of FIG.
  • the reference value obtained from each local area of the input image is compared with the surrounding pixels in the local area, and the ternary comparison code T ( s, t) are combined to generate a ternary pattern code Pnb, and coefficient data is read out using the ternary pattern code Pnb as a selection code.
  • the binary pattern code Pna described in the first embodiment is used, the features of the image can be classified more finely, and an enlarged image with higher sharpness can be obtained.
  • Embodiment 3 FIG.
  • the second embodiment has the following problems. That is, the number of coefficient data is as large as 6561, and the coefficient data storage unit 57b needs to have a large capacity.
  • the third embodiment solves this problem, and the coefficient data storage unit stores coefficient data corresponding to the binary pattern code and ternary values generated when no high frequency component is included in the local region.
  • a binary pattern code is used as a selection code
  • a ternary pattern code is used as a selection code.
  • the components with high spatial frequency in the image are often due to noise or fine patterns such as turf and sandstorms, and even if it is not faithfully reproduced when the image is enlarged, it will be uncomfortable to the human eye. It does not appear.
  • the local region corresponding to the binary pattern code is used for the local region containing the high-frequency component.
  • FIG. 29 shows an image enlargement apparatus 50c according to the third embodiment.
  • the illustrated image enlargement device 50c can be used in place of the image enlargement device 50 of the first embodiment, and includes a linear interpolation unit 52, a high-resolution patch generation unit 54, a pattern determination unit 56c, and a coefficient data storage unit 57c. And a coefficient data reading unit 58c and a patch averaging unit 55.
  • the linear interpolation unit 52, the high resolution patch generation unit 54, and the patch averaging unit 55 are the same as those in the first embodiment.
  • the pattern determination unit 56 c includes a local region extraction unit 71, an in-region average calculation unit 72, a comparison code generation unit 93, and a selection code generation unit 94.
  • the selection code generation unit 94 includes a binary pattern code generation unit 75, a ternary pattern code generation unit 95, a high frequency component detection unit 98, and a code selection unit 99.
  • the ternary pattern code generation unit 95 includes a code connection unit 96 and a code conversion unit 97.
  • the binary pattern code generation unit 75 is the same as the binary pattern code generation unit 75 of the first embodiment.
  • the local region extraction unit 71 and the intra-region average calculation unit 72 are the same as those described with reference to FIG.
  • the comparison code generation unit 93 outputs the average value AVE of the pixel values in each local region output from the intra-region average calculation unit 72 and the eight peripheral pixels of the local region output from the local region extraction unit 71.
  • a size comparison with the pixel value IN (s, t) is performed, and a binary comparison code D (s, t) and a ternary comparison code T (s, t) indicating the comparison results for each peripheral pixel are output.
  • the comparison code generation unit 93 includes a binary comparison code generation unit 73c and a ternary comparison code generation unit 83c.
  • the comparison code generation units 73c and 83c perform the same processing as the comparison code generation unit 73 in FIG. 12 and the comparison code generation unit 83 in FIG. 26, respectively.
  • the comparison code generation unit 73c outputs the average value AVE of the pixel values of the pixels in each local region output from the intra-region average calculation unit 72. Is compared with the pixel value IN (s, t) of the peripheral pixels in the local region output from the local region extraction unit 71, and a binary comparison code D (s) indicating a comparison result for each peripheral pixel is performed. , t).
  • the comparison code D (s, t) when the pixel value IN (s, t) is less than the average value AVE, the comparison code D (s, t) is “0b”, and when the pixel value IN (s, t) is equal to or greater than the average value AVE, the comparison code D (s, t) is “ 1b ".
  • the generation process of the comparison code D (s, t) is expressed by the above equation (6).
  • the comparison code D (s, t) is set to “0b” in the above example. In this case, the comparison code D (s, t) is set to “0b”. It may be “1b”. In short, the comparison code generation unit 73 either determines whether or not the pixel value IN (s, t) is greater than or equal to the average value AVE and whether or not the pixel value IN (s, t) is equal to or less than the average value AVE. Anything that does. The assignment of the comparison codes “0b” and “1b” may be reversed. In short, the comparison code generation unit 73 only needs to output the first value or the second value according to the determination result.
  • the comparison code generation unit 83c includes an average value AVE of the pixel values of the pixels in each local region output from the intra-region average calculation unit 72, and a local region extraction unit.
  • the pixel value IN (s, t) of the peripheral pixels in the local area output from 71 is compared in size, and a ternary comparison code T (s, t) indicating the comparison result for each peripheral pixel is output.
  • Each comparison code T (s, t) is represented by 2 bits.
  • the comparison code T (s, t) is set to “00b”, and the pixel value IN (s , t) is greater than the average value AVE and the absolute value of the difference is equal to or greater than the threshold value ⁇ , the comparison code T (s, t) is set to “10b”, and the pixel value IN (s, t) is averaged
  • the comparison code T (s, t) is set to “01b”.
  • the generation process of the comparison code T (s, t) is expressed by the above equation (9).
  • the assignment of the comparison code is not limited to the above example, and for example, “11b” may be used as the comparison code.
  • the assignment of the comparison codes “0b” and “1b” may be reversed.
  • the comparison code generation unit 83c only needs to output the first value, the second value, or the third value according to the determination result.
  • the binary pattern code generation unit 75 connects the comparison codes D (s, t) for the eight neighboring pixels generated by the comparison code generation unit 73c for each local region to 2 A value pattern code Pna is generated.
  • the code concatenation unit 96 Similar to the ternary pattern code generation unit 85 of the second embodiment, the code concatenation unit 96 generates the comparison codes T (s, t) for the eight neighboring pixels generated by the comparison code generation unit 83c for each local region. Are combined to generate a ternary pattern code Pnb.
  • the code converter 97 generates a code with a narrower range of possible values (representable with a smaller number of bits) from the concatenated code Pnb output from the code concatenation unit 96, and outputs the code as a ternary pattern code Pnc To do.
  • the output of the code conversion unit 97 becomes the output of the ternary pattern code generation unit 95.
  • the high frequency component detection unit 98 determines whether or not a high frequency component is included in the local region based on the result of comparison by the comparison code generation unit 83c for the pixels in each local region, that is, a predetermined spatial frequency or higher. Is determined, and a signal SL indicating the determination result is output.
  • the signal SL represents a first value, for example, “1” when a high-frequency component is included, and represents a second value, for example, “0”, when the signal SL is not included. Become.
  • the high-frequency component detection unit 98 converts the pixel values of a plurality of pixels belonging to each of a plurality of groups each consisting of a plurality of pixels aligned in the row direction or the column direction within the local region to three values for each pixel.
  • the local region includes a high-frequency component. Is determined. In this case, for the pixel located at the center in the local area, the absolute value of the difference between the pixel value of the pixel and the reference value is less than the threshold value ⁇ , and therefore a ternary comparison code in that case is generated. Treat as being.
  • “Compare the pixel value of a pixel to a ternary value using a comparison code” means that the pixel value is compared with the reference value by the ternary comparison code T (s, t), and the pixel value becomes the reference value. Is smaller than AVE and the absolute value of the difference is greater than or equal to the threshold value ⁇ , and therefore belongs to the smallest value range (class) or the pixel value is larger than the reference value AVE and the absolute value of the difference is Whether it is greater than or equal to the threshold value ⁇ and therefore belongs to the largest value range (class) or whether the absolute value of the difference between the pixel value and the reference value AVE is less than the threshold value ⁇ and therefore belongs to an intermediate range (class) This means that the class to which the pixel value belongs is determined by the ternary comparison code, and the classes are compared with each other.
  • the ternary comparison code T (s, t) for the pixel is set as the first value, and when the pixel value belongs to the middle class, 3 for the pixel.
  • the value comparison code T (s, t) is the second value and the pixel value belongs to the highest value class, the ternary comparison code T (s, t) for the pixel is determined from the second value.
  • the third value (10b) is larger than the second value (01b) and larger than the first value (00b) as in the above example.
  • the pixel value comparison using the ternary comparison code is performed by determining the magnitude relationship between the values of the ternary comparison code T (s, t) for the pixels belonging to each group. Therefore, it is determined whether or not the pixel value of the pixel located at the center takes a maximum value or a minimum value. be able to.
  • the “pixel value comparison using the ternary comparison code”, and thus the pixel of the pixel located at the center It can be easily determined whether or not the value has a maximum value or a minimum value.
  • the value of the ternary comparison code T (s, t) generated according to the class to which the pixel value belongs gradually increases in the order of the magnitude of the pixel value belonging to each class (in order of large or small).
  • the “pixel value comparison using the ternary comparison code”, and therefore the center It is possible to easily determine whether or not the pixel value of the pixel located at is a maximum value or a minimum value.
  • the code selection unit 99 selects either the binary pattern code Pna output from the binary pattern code generation unit 75 or the ternary pattern code Pnc output from the ternary pattern code generation unit 95, and selects a selection code D56c. Output as.
  • the selection in the code selection unit 99 is performed according to the selection signal SL output from the high frequency component detection unit 98. That is, when the value of the signal SL is “1”, the binary pattern code Pna output from the binary pattern code generator 75 is selected, and when it is “0”, the signal is output from the ternary pattern code generator 95. A ternary pattern code Pnc is selected.
  • the input order of the data indicating the pixel values of the pixels in each local area to the comparison code generation unit 93 is the same as that described with reference to FIGS. 14A and 14B with respect to the first embodiment. Further, the comparison by the comparison code generation unit 73c and the generation of the binary pattern code Pna in the binary pattern code generation unit 75 are the same as those described with reference to FIGS. 15A to 15C in the first embodiment. To be done. This process is expressed by the above equation (7).
  • FIGS. 31A to 31D show an example of comparison by the comparison code generation unit 83c and generation of the ternary pattern code Pnc by the ternary pattern code generation unit 95 performed for one local region.
  • the comparison code generation unit 83c includes the average AVE of each local region output from the in-region average calculation unit 72 and the eight surroundings illustrated in FIG. 31A in the local region output from the local region extraction unit 71. Comparison is made with the pixel value IN (s, t) of the pixel, and a ternary comparison code T (s, t) for the peripheral pixels shown in FIG. 31B, ie, T (-1, -1) , T (-1, 0), T (-1, 1), T (0, -1), T (0, 1), T (1, -1), T (1, 0), T (1 , 1).
  • the code connecting unit 96 of the ternary pattern code generating unit 95 connects the ternary comparison codes T (s, t) for the eight neighboring pixels in the order indicated by the line ARd with an arrow, and connects them.
  • a 16-bit concatenated code Pnb shown in (c) is generated. This process is expressed by the above equation (10).
  • the code conversion unit 97 of the ternary pattern code generation unit 95 converts the concatenated code Pnb into a code having a narrower range of possible values shown in FIG. 31 (d), and the converted code is ternary. Output as pattern code Pnc.
  • the comparison code generation unit 83c does not always generate the comparison code T (s, t) for all the eight pixels, but in the middle of the sequential comparison for the eight pixels.
  • the comparison (for the remaining pixels) and generation of the comparison code T (s, t) are omitted.
  • the ternary pattern code Pnc is not generated.
  • the high frequency component detection unit 98 determines whether or not a high frequency component is included in each local region (presence / absence of high frequency component) based on the output of the comparison code generation unit 83c.
  • This determination is made based on the following idea. That is, for example, in a fine pattern image such as turf or sandstorm, in each group of pixels (three pixels in the illustrated example) aligned in the row direction or column direction within the local region, the comparison code of the center pixel Is different from any of the comparison codes of the pixels at both ends, and there is a high probability that the pixel value of the center pixel is maximum or minimum. Therefore, in such a case, it is determined that a high frequency component is included. For example, this corresponds to the case where the comparison code of the center pixel is “01b” and the comparison codes of the pixels at both ends are both “00b”. This is also the case when the comparison code of the center pixel is “00b” and the comparison codes of the pixels at both ends are “01b” and “10b”, respectively.
  • step S14 in FIG. 16 the processes shown in FIGS. 32 to 34 are performed instead of the process shown in FIG.
  • steps S21 and S22 are the same as those in FIG.
  • the comparison code generation unit 83c compares the average value AVE with the pixel value IN (-1, -1) of the pixel in the first column and the first row (S101), and outputs a ternary value according to the comparison result.
  • a comparison code T (-1, -1) is generated (S102).
  • the generated ternary comparison code T ( ⁇ 1, ⁇ 1) is supplied to the code connecting unit 96 and the high frequency component detecting unit 98.
  • the comparison code generation unit 83c compares the average value AVE with the pixel value IN (-1, 0) of the pixels in the first column and the second row (S103), and according to the comparison result, the ternary comparison code T ( -1,0) is generated (S104).
  • the generated ternary comparison code T (-1, 0) is supplied to the code connecting unit 96 and the high frequency component detecting unit 98.
  • the comparison code generation unit 83c compares the average value AVE with the pixel value IN ( ⁇ 1, 1) of the pixel in the first column and the third row (S105), and the ternary comparison code T ( -1,1) is generated (S106).
  • the generated ternary comparison code T ( ⁇ 1, 1) is supplied to the code connection unit 96 and the high frequency component detection unit 98.
  • the ternary comparison codes T ( ⁇ 1, ⁇ 1), T ( ⁇ 1,0), and T ( ⁇ 1) for the three pixels in the first column GC1 shown in FIG. , 1) is complete.
  • the high-frequency component detection unit 98 performs ternary comparison codes T ( ⁇ 1, ⁇ 1), T ( ⁇ 1,0), and T ( ⁇ 1,1) for the three pixels in the first column GC1.
  • the presence / absence of a high-frequency component is determined based on (S107).
  • the high frequency component detection unit 98 determines that a high frequency component is included when the following expression (11) holds for the pixels in the first column GC1.
  • Sign ⁇ A ⁇ represents the sign of A.
  • the comparison code generation unit 83c determines the average value AVE and the pixel value IN (0, 1) of the pixel in the third row and second column. Are compared (S109), and a ternary comparison code T (0, 1) is generated according to the comparison result (S110).
  • the generated ternary comparison code T (0,1) is supplied to the code connecting unit 96 and the high frequency component detecting unit 98.
  • the comparison code generation unit 83c compares the average value AVE and the pixel value IN (1, 1) of the pixel in the third row and third column (S111), and according to the comparison result, the ternary comparison code T (1 , 1) is generated (S112).
  • the generated ternary comparison code T (1,1) is supplied to the code connecting unit 96 and the high frequency component detecting unit 98.
  • the high-frequency component detection unit 98 performs ternary comparison codes T ( ⁇ 1, ⁇ 1), T ( ⁇ 1,0), and T ( ⁇ 1,1) for the three pixels in the third row GR3.
  • the presence / absence of a high frequency component is determined based on the above (S113).
  • the high frequency component detection unit 98 determines that a high frequency component is included when the following formula (12) is satisfied for the pixel in the third row GR3.
  • step S113 If it is determined in the above determination that a high frequency component is included (YES in S113), the process proceeds to step S131.
  • the comparison code generation unit 83c determines the average value AVE and the pixel value IN (1, 0) of the pixel in the second row of the third column. Are compared (S115), and a ternary comparison code T (1, 0) is generated according to the comparison result (S116). The generated ternary comparison code T (1, 0) is supplied to the code connecting unit 96 and the high frequency component detecting unit 98.
  • the high frequency component detection unit 98 performs high frequency based on the ternary comparison codes T ( ⁇ 1, 0) and T (1, 0) for the pixels at both ends of the second row GR2 in FIG.
  • the presence / absence of the component is determined (S117).
  • the pixel value for the central pixel that is, the central pixel of the local region
  • the ternary comparison code T (0,0) for the central pixel. ) Is performed based on the assumption that it is “01b”.
  • the high frequency component detection unit 98 determines that a high frequency component is included if the following expression (13) is satisfied.
  • step S131 if it is determined that a high frequency component is included (YES in S117), the process proceeds to step S131.
  • the comparison code generation unit 83c determines the average value AVE and the pixel value IN (1, ⁇ 1) of the pixel in the third column and the first row. ) Are compared (S119), and a three-value comparison code T (1, -1) is generated according to the comparison result (S120).
  • the generated ternary comparison code T (1, 0) is supplied to the code connecting unit 96 and the high frequency component detecting unit 98.
  • the high frequency component detection unit 98 is based on the ternary comparison codes T (1, -1), T (1,0), and T (1,1) for the three pixels in the third column GC3. It is determined whether or not there is a high frequency component (S121).
  • the high frequency component detection unit 98 determines that a high frequency component is included when the following expression (14) is satisfied.
  • step S121 If it is determined in the above determination that a high frequency component is included (YES in S121), the process proceeds to step S131.
  • the comparison code generation unit 83c determines the average value AVE and the pixel value IN (0, ⁇ 1) of the pixels in the first row and second column. ) Are compared (S123), and a ternary comparison code T (0, -1) is generated according to the comparison result (S124).
  • the generated comparison code T (0, ⁇ 1) is supplied to the code connecting unit 96 and the high frequency component detecting unit 98.
  • the ternary comparison codes T ( ⁇ 1, ⁇ 1), T (0, ⁇ 1), and T (1,1) for the three pixels in the first row GR1 shown in FIG. -1) is complete.
  • the high frequency component detection unit 98 performs ternary comparison codes T ( ⁇ 1, ⁇ 1), T (0, ⁇ 1), and T (1, ⁇ 1) for the three pixels in the first row GR1.
  • the presence / absence of a high-frequency component is determined based on (S125).
  • the high frequency component detection unit 98 determines that a high frequency component is included when the following expression (15) is satisfied.
  • the high frequency component detection unit 98 performs ternary processing on pixels other than the center pixel in the second column GC2 in FIG. 35B (pixels in the first row and the third row in the second column GC2). Based on the comparison codes T (0, -1) and T (0,1), the presence / absence of a high frequency component is determined (S127). Also in this determination, as in step S117, the pixel value for the center pixel (that is, the center pixel of the local region) has a small difference from the average value AVE, and the ternary comparison code T (0, 0, 0) for the center pixel. 0) is performed on the assumption that it is “01b”. That is, the high frequency component detection unit 98 determines that a high frequency component is included if the following expression (16) is satisfied.
  • step S131 When it is determined in any of steps S125 and S127 that a high frequency component is included (when at least one of S125 and S127 is YES), the process proceeds to step S131.
  • step S141 When it is determined in both steps S125 and S127 that both high-frequency components are not included (NO in both steps S125 and S127), the process proceeds to step S141.
  • step S131 the binary comparison code generation unit 73c generates a binary comparison code D (s, t).
  • step S132 the binary pattern code generation unit 75 generates a binary pattern code Pna.
  • step S133 the code selection unit 99 selects the binary pattern code Pna and outputs it as the selection code D56c.
  • step S141 the code concatenation unit 96 concatenates the ternary comparison codes T (s, t) to generate a concatenated code Pnb, and in step S142, the code conversion unit 97 converts the concatenated code to 3 The value pattern code Pnc is generated, and then in step S143, the code selection unit 99 selects the ternary pattern code Pnc and outputs it as the selection code D56c.
  • step S117 it is assumed that the pixel value of the center pixel has a small difference from the average value AVE, and the ternary comparison code T (0,0) for the center pixel is “01b”. 13), it is determined whether or not a high-frequency component is included. Instead, the ternary comparison code T (0,0) based on the result of comparison with the average value AVE is also obtained for the pixel value of the central pixel. 0) is generated, and when the following equation (17) similar to equation (12) is established using this ternary comparison code, it may be determined that a high-frequency component is included.
  • step S127 it may be determined that a high-frequency component is included when the following equation (18) holds instead of the equation (16).
  • the code conversion unit 97 converts the concatenated code output from the code concatenation unit 96 into a code having a narrower range of possible values and outputs the converted code as a ternary pattern code Pnc.
  • the concatenated code output from the code concatenation unit 96 takes one of 6561 values, but the code conversion unit 97 includes the concatenated code Pnb output from the code concatenation unit 96.
  • the ternary pattern code Pnc is not output, and the concatenated code Pnb output from the code concatenation unit 96 is When any one of 785 predetermined values out of 6561 values is taken, the corresponding converted ternary pattern code Pnc is output.
  • 36 (a) to (c) show part of the correspondence between the concatenated code before conversion by the code conversion unit 97 and the value of the ternary pattern code after conversion.
  • the concatenated code Pnb before the conversion is a concatenated code obtained by concatenating ternary comparison codes Ta to Th (respectively have the relationship shown in FIG. 36E) for the eight pixels A to H (FIG. 36D).
  • the ternary pattern code Pnc is determined to take a value different from the value that the ternary pattern code Pnb can take.
  • the converted code Pnc output from the code converter 97 has a one-to-one correspondence with the concatenated code Pnb generated when no high frequency component is included, and is output from the code converter 97.
  • the number of values that can be taken by the converted ternary pattern code Pnc is the same as the number of values that can be taken by the concatenated code Pnb that is generated when high-frequency components are not included.
  • the difference between adjacent values is 1.
  • a dotted frame surrounding the values of the ternary comparison codes Ta to Th indicates that a high frequency component has been detected by the determination using the ternary comparison codes.
  • the ternary pattern code is not output from the code conversion unit 97.
  • the code selection unit 99 performs binary pattern code Pna. This is because the ternary pattern code Pnc is not selected. That is, in these cases, since the ternary pattern code Pnc is not selected, the code conversion unit 97 does not output the converted code.
  • the selection code D56c When the binary pattern code Pna becomes the selection code D56c and when the ternary pattern code Pnc becomes the selection code D56c, the selection code D56c has a different value.
  • the selection code D56c when the binary pattern code Pna is selected is a value from 0 to 255
  • the selection code D56c when the ternary pattern code Pnc is selected is, for example, shown in FIG.
  • the values after 256 are, for example, values from 256 to 1041.
  • the ternary pattern code Pnc is determined to have a value different from the value that can be taken by the ternary pattern code Pnb, and when the binary pattern code Pna becomes the selection code D56c, When the pattern code Pnc becomes the selection code D56c, instead of making the selection code D56c have a different value, when the binary pattern code Pna becomes the selection code D56c, the ternary pattern code Pnc becomes the selection code D56c.
  • the coefficient data may be read from a different area or a different storage unit of the coefficient data storage unit 57c.
  • the coefficient data storage unit 57c has a first storage area or storage unit and a second storage area or storage unit, and a binary pattern code Pna is a selection code in the first storage area or storage unit. Coefficient data to be read when D56c is obtained is stored, and coefficient data to be read when the ternary pattern code Pnc becomes the selection code D56c is stored in the second storage area or storage unit.
  • the binary pattern code Pna becomes the selection code D56c
  • the first storage area or storage unit is selected.
  • the ternary pattern code Pnc becomes the selection code D56c
  • the second storage area or storage unit is selected. You may make it.
  • the coefficient data reading unit 58c may generate a signal for selection based on the signal SL indicating the result of determination by the high frequency component detection unit 98.
  • the high resolution patch generation unit 54 generates the high resolution patch HPc for each patch LPc of the interpolation image D52 using the coefficient data D58c read by the coefficient data reading unit 58c.
  • the patch averaging unit 55 averages the pixel values Dout of the output image Dout by averaging the pixel values of the plurality of high resolution patches HPc for each pixel of the high resolution image D54. Calculate (x, y).
  • the same device as shown in FIG. 18 can be used to generate the coefficient data stored in the coefficient data storage unit 57c.
  • the pattern discriminating unit 105 it is necessary to use the same one as the pattern discriminating unit 56c of FIG. 30 instead of the same one as the pattern discriminating unit 56 of FIG.
  • the coefficient data storage unit corresponds to the coefficient data corresponding to the binary pattern code and the ternary pattern code generated when a high frequency component is not included in the local region. If the high frequency component is included in the local area, the binary pattern code is used as the selection code D56c. If the high frequency component is not included in the local area, the ternary pattern is stored. Coefficient data is selected using the code as the selection code D56c. As a result, compared to the case of the second embodiment, it is possible to generate an enlarged image with suppressed degradation of image quality while suppressing the capacity of the coefficient data storage unit.
  • the high frequency component detection unit 98 includes a high frequency component when the pixel value of the central pixel is maximum or minimum in any one of the group of pixels arranged in the row direction or the column direction in the local region. Since it is determined using a ternary comparison code whether or not the pixel value is maximal or minimal, it is possible to determine whether or not a high-frequency component is included with a small circuit scale. Can be realized.
  • an image enlarging method performed by the image enlarging apparatus also forms part of the present invention.
  • Part or all of the elements constituting the image enlargement apparatus or part or all of the processing in the image enlargement method can be realized by software, that is, by a programmed computer. Therefore, a program for causing a computer to execute part or all of the elements of the image enlargement apparatus or part or all of the processing in the image enlargement method, and a computer-readable recording medium on which the program is recorded are also part of the present invention.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Image Processing (AREA)
  • Television Systems (AREA)
  • Studio Devices (AREA)
  • Closed-Circuit Television Systems (AREA)

Abstract

 学習データを利用する超解像度処理により画像を拡大するに当たり、各パッチから得られた基準値と各パッチの周辺画素の画素値との比較を行って、2値又は3値の比較コードを生成し、該比較コードから生成した2値パターンコード又は3値パターンコードに対応する高解像度成分のパッチを読み出す。高周波成分が含まれる場合には2値パターンコードを用い、そうでない場合には3値パターンコードを用いることとしても良い。係数データ記憶部の記憶容量を抑制して、高解像度感を向上させることができる。

Description

画像拡大装置、画像拡大方法、及び監視カメラ、並びにプログラム及び記録媒体
 本発明は、入力画像を拡大し、より高解像度の出力画像を生成する画像拡大装置及び画像拡大方法に関する。本発明はまた、上記の画像拡大装置を備えた監視カメラに関する。本発明はさらに、画像拡大装置又は方法をコンピュータで実現するためのプログラム、及び該プログラムを記録した記録媒体に関する。
 画像を電子的に拡大する場合、従来からバイリニア(Bilinear)法、バイキュービック(Bicubic)法等による線形補間が行われてきた。これらの線形補間は、拡大率が大きくなるほど画像の高解像度感乃至鮮鋭感が低くなる傾向にある。これに対し、より鮮鋭感が高い高解像度画像を得る手法として、学習データベースを用いた超解像処理が知られている。この手法は、高解像度画像と低解像度画像の対応関係の事例を蓄積したデータベースを参照することにより、入力画像に存在しない高解像度成分を予測し、高解像度化を行うものである。
 例えば、特許文献1に記載の超解像処理では、補間された画像を分割することで形成されたパッチ毎に探索ベクトルを生成し、探索ベクトルに対する類似度が最も大きいインデックスベクトルに対応する高周波成分データを学習データベースから読み出して、高解像度のパッチを生成する。
特開2003-018398号公報(段落0014から0017)
 しかしながら、特許文献1に記載の超解像処理では、学習データベース(係数データベース)に大量のデータを蓄えなければならず、必要となる記憶容量及び回路規模が大きい。
 本発明は上記のような問題点を解決するためになされたものであり、必要となる記憶容量及び回路規模を小さくても、鮮鋭感が高い高解像度画像を得ることを可能にすることである。
 本発明の画像拡大装置は、
 入力画像を線形補間により拡大して補間画像を生成する線形補間部と、
 それぞれ前記補間画像の一部を成す複数のパッチの各々について、高解像度化を行って高解像度パッチを生成する高解像度パッチ生成部と、
 前記入力画像のうちの前記補間画像の各パッチに対応する局所領域のパターンを判別し選択コードを出力するパターン判別部と、
 前記選択コードの取り得る複数の値にそれぞれ対応する複数個の係数データを記憶する係数データ記憶部と、
 前記係数データ記憶部に記憶されている複数個の係数データから前記選択コードに対応する係数データを読み出す係数データ読出し部とを有し、
 前記高解像度パッチ生成部は、前記係数データ記憶部から読み出された係数データを用いて、前記高解像度パッチの生成を行い、
 前記パターン判別部は、
 前記局所領域内の画素の画素値の平均値、又は該局所領域の中心に位置する画素の画素値を基準値とし、前記中心に位置する画素以外の複数の周辺画素の画素値と、前記基準値との比較を行い、該比較の結果を示す2値の比較コード及び3値の比較コードの少なくとも一方を生成する比較コード生成部と、
 前記局所領域内の前記複数の周辺画素について生成された前記比較コードに基づいて前記選択コードを生成する選択コード生成部とを有する
 ことを特徴とする。
 本発明によれば、パッチに対応する局所領域内の画素の画素値を、該局所領域から得られた基準値と比較することで比較コードを生成し、該比較コードに基づいて生成された選択コードで、係数データ記憶部から係数データを選択するので、係数データ記憶部に記憶する係数データの量を少なくすることができ、しかも、鮮鋭感が高い高解像度画像を得ることができる。
監視システムの構成例を示すブロック図である。 図1の監視カメラの構成例を示すブロック図である。 図1のネットワークレコーダの構成例を示すブロック図である。 本発明の実施の形態1の画像拡大装置の構成を示すブロック図である。 (a)及び(b)は、入力画像及び入力画像の線形補間による拡大で得られる補間画像を示す図である。 実施の形態1の画像拡大装置で用いられる高解像度パッチ生成部の構成を示すブロック図である。 補間画像におけるパッチの配列及び各パッチに含まれる画素を示す図である。 (a)及び(b)は補間画像の各パッチにおける画素の配列と、各画素についての差分値による列ベクトルの構成要素との対応関係を示す図である。 高解像度拡大画像におけるパッチの配列及び各パッチに含まれる画素を示す図である。 変換により得られた高解像度画像の特徴量による列ベクトルの構成要素に対応する高解像度画像の画素の配列を示す図である。 係数データ記憶部57が記憶する係数データの一例を示す図である。 実施の形態1の画像拡大装置で用いられるパターン判別部の構成を示すブロック図である。 入力画像における局所領域の配列及び各局所領域に含まれる画素を示す図である。 (a)は、入力画像Dinの各パッチの画素の画素値を、それぞれの画素の位置に示す図、(b)は、比較コード生成部への、各パッチの画素の画素値IN(s,t)の入力順序を示す図である。 (a)~(c)は、実施の形態1における、一つのパッチについての2値パターンコード生成の例を示す図である。 実施の形態1の画像拡大装置における処理の手順を示すフロー図である。 図16のパターン判別ステップの処理の詳細を示すフロー図である。 係数データの生成に用いられる装置(係数データ生成装置)を示すブロック図である。 (a)~(c)は、教師画像、教師画像を縮小することで得られる縮小画像、縮小画像を線形補間により拡大することで得られる補間画像を示す図である。 パッチペアの分類の例を示す図である。 行数がNL×NLに等しく、列数がグループ内のパッチの数に等しい、係数の行列を示す図である。 行数がNH×NHに等しく、列数がグループ内のパッチの数に等しい、係数の行列を示す図である。 補間画像のNL×NL個の画素で構成されるパッチと、高解像度画像のNH×NH個の画素で構成されるパッチの関係を示す図である。 回帰演算で求められるNL×NL行、NL×NL列の係数の行列Msのうち、NH×NH個の画素の算出に用いられる係数を示す図である。 本発明の実施の形態2の画像拡大装置の構成を示すブロック図である。 実施の形態2の画像拡大装置で用いられるパターン判別部の構成を示すブロック図である。 (a)~(c)は、実施の形態2における、一つのパッチについての3値パターンコード生成の例を示す図である。 実施の形態2において、図16のパターン判別ステップで行われる処理の詳細を示すフローチャートである。 本発明の実施の形態3の画像拡大装置の構成を示すブロック図である。 実施の形態3の画像拡大装置で用いられるパターン判別部の構成を示すブロック図である。 (a)~(d)は、実施の形態3における、一つのパッチについての3値パターンコード生成の例を示す図である。 実施の形態3において、図16のパターン判別ステップで行われる処理の一部の詳細を示すフローチャートである。 実施の形態3において、図16のパターン判別ステップで行われる処理の他の一部の詳細を示すフローチャートである。 実施の形態3において、図16のパターン判別ステップで行われる処理の他の一部の詳細を示すフローチャートである。 (a)及び(b)は、行方向又は列方向に並んだ画素から成る画素群の構成を示す図である。 (a)~(c)は、図30のコード変換部の入力と出力の関係を示す図、(d)は、各パッチの周辺画素に付される符号を示す図、(e)は、周辺画素の画素値に付される符号を示す図である。
実施の形態1.
 図1は、本発明の実施の形態1に係る監視カメラを含む監視システムの構成例を示している。
 監視システムは、監視カメラ10とネットワークレコーダ20とを含む。監視カメラ10及びネットワークレコーダ20は、ネットワーク30を介して互いに接続されている。監視カメラ10により監視対象領域を撮影することで得られた画像は、ネットワーク30を通して送信され、ネットワークレコーダ20に記録され、モニタ40で表示される。
 図2は、図1の監視カメラ10の構成例を示している。図示の監視カメラ10は、撮影部11、画像入力部12、画像処理部13、画像スケーラ14、画像符号化部15、及び回線I/F部16を有する。
 撮影部11は、監視対象領域を撮影して画像を得るものである。撮影部11により得られた画像は画像入力部12に入力される。
 画像入力部12は撮影部11からの入力画像に対してA/D変換などの処理を施して画像処理部13に出力し、画像処理部13は画像入力部12から供給される画像に対して画像処理を行って処理画像D13を得る。
 画像処理部13が行う画像処理としては、ガンマ補正等の信号レベル補正、色補正、ホワイトバランス処理、ノイズリダクション処理、フリッカ補正、増感処理、画像合成処理、エッジ強調、レンダリング処理等が挙げられる。画像処理部13は、上記の処理のうちの一つ又は複数の処理を組合せて画像処理を行う。また、画像処理部13が、上記以外の周知の画像処理を、単独で、或いは上記の処理と組合せて行うようにしてもよい。
 画像スケーラ14は、処理画像D13に対し、超解像処理による拡大処理を行って、高解像度画像D14を生成し、画像符号化部15に出力する。
 画像符号化部15は、高解像度画像D14に対し、JPEG、H.264、MPEG-2、MPEG-4等の画像符号化方式により画像データの圧縮を行い、回線I/F部16に映像ストリームD15を出力する。
 回線I/F部16は、映像ストリームD15に音声データ等他のデータを多重し、パケット化等の処理を行って、多重ストリームDSとしてネットワーク30に送出する。
 図3は、図1のネットワークレコーダ20の構成例を示している。図示のネットワークレコーダ20は、回線I/F部21、記録再生部22、記憶装置23、画像復号部24、画像スケーラ25、及び表示画像生成部26を有する。
 回線I/F部21は、ネットワーク30を介して受信した多重ストリームDSから映像ストリーム、音声データ等を分離し、記録再生部22に出力する。
 記録再生部22は、分離されたデータを記憶装置23に記録する。
 記録再生部22はまた、回線I/F部21から入力した映像ストリーム又は記憶装置23から読み出した映像ストリームを画像復号部24に出力する。
 画像復号部24は、JPEG、H.264、MPEG-2、MPEG-4等の画像符号化方式により圧縮された画像データの伸張を行い、復号画像D24を画像スケーラ25に出力する。
 画像スケーラ25は、復号画像D24に対し、超解像処理による拡大処理を行って、高解像度画像D25を生成し、表示画像生成部26に出力する。
 表示画像生成部26は、画像データをモニタ40で表示可能な形式に変換し、モニタ40に出力する。
 モニタ40は、表示画像生成部26からの画像データに応じて画像を表示する。
 図1の監視システムにおいて、監視カメラ10の画像スケーラ14及びネットワークレコーダ20の画像スケーラ25の双方で、画像の拡大を行うこととしてもよく、一方のみで画像の拡大を行うこととしてもよい。例えば、ネットワークレコーダ20が画像スケーラ25を備える場合には、監視カメラ10の画像スケーラ14では画像拡大を行わず、ネットワークレコーダ20の画像スケーラ25で画像の拡大を行うこととし、ネットワークレコーダ20が画像スケーラ25を備えない場合には、監視カメラ10の画像スケーラ14で画像の拡大を行うこととしても良い。
 図4は、図2の画像スケーラ14及び図3の画像スケーラ25として用い得る画像拡大装置50を示している。画像拡大装置50が画像スケーラ14として用いられる場合には、処理画像D13が入力画像Dinとして供給され、出力画像Doutが高解像度画像D14として出力される。
 画像拡大装置50が画像スケーラ25として用いられる場合には、復号画像D24が入力画像Dinとして供給され、出力画像Doutが高解像度画像D25として出力される。
 また、以下に詳述する例では画像拡大装置50による拡大率は水平方向及び垂直方向のいずれにおいても「2」である。
 以下では、画像の輝度成分に対して超解像処理による拡大処理を行う場合について説明する。この場合、処理画像D13又は復号画像D24の輝度成分を入力画像Dinとし、これに対して超解像処理による拡大処理を行う。しかしながら、本発明はこれに限定されず、色差成分に対しても同様の処理を行うことができる。また、画像が例えば赤、緑、青の色成分毎のデータで表されるものである場合、色成分ごとに超解像処理による拡大を行うこととしても良い。
 図4に示される画像拡大装置50は、線形補間部52と、高解像度パッチ生成部54と、パッチ平均化部55と、パターン判別部56と、係数データ記憶部57と、係数データ読出し部58とを有する。
 線形補間部52は、入力画像Dinを線形補間により拡大して低解像度の拡大画像、即ち補間画像D52を生成する。補間画像D52は、後述の高解像度画像との対比で「低解像度拡大画像」とも呼ばれる。
 高解像度パッチ生成部54は、それぞれ補間画像D52の一部を成す複数のパッチ(補間画像パッチ)を切出し、各パッチについて高解像度化を行って、対応する高解像度パッチを生成する。高解像度のパッチの生成により、パッチを構成する画素の画素値が求められる。
 パッチ平均化部55は、高解像度画像の各画素について1つ以上の前記高解像度パッチの各々の生成によって求められた当該画素の画素値を平均化することで出力画像における当該画素の画素値を生成する。
 パターン判別部56は、入力画像Dinのうちの補間画像D52の各パッチに対応する局所領域の特徴を判別し、判別結果に基づいて選択コードD56を生成する。
 本実施の形態のパターン判別部56は、局所領域内の画素の画素値の平均値、又は該局所領域の中心に位置する画素の画素値を基準値とし、上記中心に位置する画素以外の周辺画素の画素値と、上記基準値との比較を行い、比較の結果に基づいて選択コードを生成する。
 係数データ記憶部57は、複数の互いに異なるパターンにそれぞれ対応する複数個の係数データを記憶する。各係数データは、1組の係数を表すデータを含み、その意味で係数組データとも呼び得る。
 係数データ読出し部58は、係数データ記憶部57に記憶されている複数個の係数データから選択コードに対応する係数データを読み出して、選択された係数データとして出力する。
 高解像度パッチ生成部54は、係数データ記憶部57から読み出された係数データを用いて、高解像度パッチの生成を行う。
 以下、各部の動作をより詳しく説明する。
 線形補間部52は、例えば図5(a)に示される入力画像Dinを線形補間によって拡大し、図5(b)に示される補間画像D52を生成する。線形補間の拡大率は、画像拡大装置50による拡大率と同じであり、例えば水平方向及び垂直方向の各々について「2」である。図5(a)及び(b)において、丸印の各々が1つの画素を表す。画像の補間は、例えばバイキュービック法により行われる。図5(b)の補間画像D52の画素のうち、黒丸で示される画素は、図5(a)に示される入力画像Dinの画素に対応する位置にある画素である。
 入力画像Din内の位置は座標(p,q)で表される。pは、入力画像Dinにおいて、水平方向における1画素ピッチ(隣接する画素間の間隔)を単位とする値であり、qは、入力画像Dinにおいて、垂直方向における1画素ピッチを単位とする値であり、各画素の位置において、p、qは整数値である。
 補間画像D52内の位置は、座標(x,y)で表される。xは、補間画像D52において、水平方向における1画素ピッチを単位とする値であり、yは、補間画像D52において、垂直方向における1画素ピッチを単位とする値であり、各画素の位置において、x、yは整数値である。
 例えば入力画像Dinにおいて左上隅の画素の座標を(p,q)=(1、1)とし、補間画像D52において左上隅の画素の座標を(x,y)=(1,1)とする場合、
 x=2p-1
 y=2q-1
の関係がある。
 さらに、入力画像の右下隅の画素の座標を(P,Q)で表すとき、補間画像D52の右下隅の画素の座標は(X,Y)=(2P-1,2Q-1)で表される。
 高解像度パッチ生成部54は、補間画像D52から、それぞれ補間画像D52の一部を成す複数のパッチ(補間画像パッチ)LPcを切出し、切出したパッチLPcの各々について高解像度化を行って、対応する高解像度パッチのデータを出力する。高解像度のパッチのデータには、パッチを構成する画素の画素値を表すデータが含まれる。
 複数の高解像度パッチの組合せにより高解像度画像D54が構成される。高解像度画像D54は、補間画像D52と水平方向及び垂直方向の画素数が同じであり、高解像度画像D54における画素の配置は、図5(b)に示される補間画像D52における画素の配置と同じである。
 高解像度パッチ生成部54は図6に示すように、特徴成分分離部62と、高解像度化変換部64と、特徴成分合成部66とを有する。
 特徴成分分離部62は、補間画像D52から、それぞれ補間画像D52の一部を成す複数のパッチ(補間画像パッチ)LPcを切出し、切出したパッチの各々の画素値を、補間画像パッチの特徴成分(低解像度の特徴成分)D62Hと補間画像パッチの特徴成分(低解像度の非特徴成分)D62Lに分離する。
 補間画像D52からのパッチの切出しは、補間画像D52の各画素が、該切出しにより形成される複数のパッチLPcの少なくとも一つに含まれるように、さらに該切出しにより形成されるパッチが互いに重なり合うように行われる。
 各パッチLPcは、例えば、図7に示すように、NL×NL個の画素から成る矩形の領域である。NLは例えば5であり、水平方向におけるパッチのピッチ(パッチの中心間の距離)LPPh、及び垂直方向におけるパッチのピッチ(パッチの中心間の距離)LPPvは、ともに2画素ピッチであり、従って水平方向に隣接し合うパッチ間には水平方向に3画素の重なりがあり、垂直方向に隣接し合うパッチ間には垂直方向に3画素の重なりがある。
 特徴成分分離部62は、補間画像D52の各パッチLPcについて、当該パッチ内のNL×NL個の画素の平均値lMeanを求めて非特徴成分D62Lとして出力し、各画素の画素値から上記平均値lMeanを減算することで得られるNL×NL個の差分値を特徴量とし、この特徴量を予め定められた順番で並べることで得られる列ベクトルを、特徴成分D62Hとして出力する。
 例えば、図8(a)に示されるように、画素P(1)~P(25)を、その番号(括弧内の数値)で示す順序で取り出して、それらの差分値dl~dl25を特徴量として、図8(b)に示すように、上から順に並べることで列ベクトルを形成する。
 特徴成分D62Hは各画素の画素値から平均値を減算することで得られるものであるので、当該パッチの高周波成分であり、非特徴成分D62Lは当該パッチの低周波成分であると言える。
 高解像度化変換部64は、係数データ読出し部58で選択された係数データD58を用いて低解像度の特徴成分D62Hを高解像度の特徴成分D64Hに変換する。この変換は、補間画像(低解像度拡大画像)のパッチの特徴成分から、高解像度画像の対応するパッチの特徴成分への変換である。ここで「位置」に関して「対応する」とは、高解像度画像のパッチの中心の画素位置が、補間画像のパッチの中心の画素位置と同じであること、言い換えると、高解像度画像を補間画像にそれらの周縁が互いに一致するように重ねた場合に高解像度画像のパッチの中心の画素位置が、補間画像のパッチの中心の画素位置と一致する位置を意味する。互いに対応する位置に中心を有する補間画像のパッチと高解像度画像のパッチとでパッチペアが構成される。
 高解像度画像におけるパッチも互いに重なり合うように形成される。
 例えば、図9に示すように、各パッチHPcは、例えばNH×NH個の画素から成る矩形の領域である。NHは例えば3であり、水平方向におけるパッチのピッチHPPh、垂直方向ともにおけるパッチのピッチHPPvはともに2画素であり、従って水平方向に隣接し合うパッチ間には水平方向に1画素の重なりがあり、垂直方向に隣接し合うパッチ間には垂直方向に1画素の重なりがある。
 係数データD58は補間画像の各パッチLPcの特徴部分値D62Hと、高解像度画像の対応するパッチHPcの特徴成分値D64Hの関係を表すものであり、係数データ読出し部58から供給される。
 ここで、補間画像の各パッチの特徴成分D62HをNL×NL個の値(補間画像の各パッチを構成する画素の特徴成分値)dl~dlNL×NLをもつ列ベクトルnlp、高解像度画像の対応するパッチの特徴成分D64HをNH×NH個の値(高解像度画像の対応するパッチを構成する画素の特徴成分値)dh~dhNH×NHをもつ列ベクトルnhp、係数データD58をNH×NH行NL×NL列の要素(係数)から成る行列Mで定義すると、高解像度化変換部64による変換は次式(1)で表される。
Figure JPOXMLDOC01-appb-M000001
 NL=5、NH=3の場合について式(1)を行列を用いて書き直すと下記の式(2)の如くとなる。
Figure JPOXMLDOC01-appb-M000002
 式(2)の左辺は、例えば、図10に示される画素Q(1)~Q(9)を、その番号(括弧内の数値)で示す順序で取り出して、それらの差分値dh~dhを上から順に並べたものである。但し、図10に示される画素Q(1)~Q(9)は、それぞれ、図8(a)に示される画素のうち、中央の3×3の位置、即ち、P(7)、P(8)、P(9)、P(12)、P(13)、P(14)、P(17)、P(18)、P(19)に対応する位置にあるものである。
 式(1)及び式(2)は、高解像度の特徴成分D64Hの各画素の値が、低解像度の特徴成分D62HのNL×NL個の全ての画素に対する重み付け加算により与えられることを示している。
 行列Mは、係数データ読出し部58で選択された係数データD58で表される係数から成る行列である。係数データ読出し部58は係数データ記憶部57に記憶された複数個の係数データD57のうちの1つの係数データを選択して、高解像度化変換部64に供給する。係数データ記憶部57に記憶されている複数個の係数データの各々は、教師画像から生成された補間画像の特徴成分D62Hと高解像度画像の特徴成分D64Hのペアの関係を表すものであり、その生成方法については後述する。
 なお、低解像度の特徴成分D62Hから高解像度の特徴成分D64Hへの変換は非線形であってもよい。その場合、係数データとしては非線形関数の係数を与えるものを用いる。
 特徴成分合成部66は、高解像度の特徴成分D64Hと非特徴成分D62Lを合成して高解像度パッチHPcを生成する。
 特徴成分合成部66は、例えば、補間画像のパッチの画素の平均値lMean(=D62L)を、高解像度の特徴成分D64Hの各成分(各画素についての値)dh~dhに加算する。
 特徴成分合成部66による合成は次式(3)により表される。
Figure JPOXMLDOC01-appb-M000003
 式(3)で、hpは、高解像度パッチHPcを構成する画素の画素値を表すNH×NH個の値h~hNH×NHをもつ列ベクトル、nhpは、高解像度パッチの特徴成分D64Hを構成するNH×NH個の画素の特徴成分値dh~dhNH×NHをもつ列ベクトル、lMeanは、非特徴成分D62Lを表すスカラー値、cは、高解像度の特徴成分(高周波成分)に対するゲインを調整するスカラー値(定数)である。
 NH=3の場合について、式(3)を、行列を用いて書き直すと下記の式(4)の如くとなる。
Figure JPOXMLDOC01-appb-M000004
 式(3)又は式(4)において、c=1とすることによって学習通りの推定結果を得ることができる。
 c>1とすることによって、高解像度の特徴成分(高周波成分)を意図的に強調(エンハンス)して出力画像の解像感を高めることができる。
 式(3)或いは式(4)による演算は、高解像度パッチの各々について行われる。
 先にも述べたように、パッチは互いに重なりあうように形成されるので、高解像度画像の画素の中には複数のパッチに属するものがある。図9の例では、高解像度画像の画素のうち、各パッチの中心に位置する画素Pxcは、1つのパッチHPcに属し、該中心画素Pxcに対し水平方向に隣接する画素Pxa及び垂直方向に隣接する画素Pxbは、2つのパッチHPcに属し、中心画素Pxcに対し斜め方向に隣接する画素Pxdは4つのパッチHPcに属する。
 2つのパッチに属する画素については、式(3)或いは式(4)による演算の結果(各パッチについての演算で、当該画素について求められた画素値)が2つ得られ、4つのパッチに属する画素については、式(3)或いは式(4)による演算の結果が4つ得られる。1つのパッチにのみ属する画素については、式(3)或いは式(4)による演算の結果が1つだけ得られる。
 パッチ平均化部55は、高解像度画像の各画素について1つ以上の高解像度パッチの値(1つ以上の前記高解像度パッチの各々の生成において求められた当該画素の画素値)を平均化することで出力画像Doutの上記画素の画素値Dout(x,y)を生成する。即ち、2つのパッチに属する画素については、2つのパッチの値を平均化し、4つのパッチに属する画素については、4つのパッチの値を平均化し、1つのパッチにしか属さない画素については1つのパッチの値をそのまま出力する。
 先にも述べたように、高解像度画像D54における画素の配置は、図5(b)に示される補間画像D52における画素の配置と同じであり、高解像度画像D54の各画素の位置は座標(x,y)で表され、当該画素の画素値は、D54(x,y)で表される。
 一方、高解像度パッチHPc内における各画素の位置は、該パッチの中心画素に対するオフセット座標(u,v)(但し、u=-1~1、v=-1~1)により表される。
 高解像度画像D54における座標(x,y)と、高解像度パッチHPcにおけるオフセット座標(u,v)との間には、下記の関係がある。
 (x,y)=(xc+u,yc+v)
 但し、(xc,yc)は、高解像度パッチHPcの中心画素の、高解像度画像D54における座標である。
 そこで、高解像度パッチ生成部54により生成された、高解像度画像D54の座標(xc,yc)の位置にある画素を中心とするパッチHPc内の座標(u,v)の画素の画素値が、高解像度画像D54の座標(x,y)=(xc+u,vc+v)の画素の画素値として取得される。
 パッチ平均化部55は、高解像度画像D54の座標(x,y)の画素について、1つ以上の高解像度パッチHPcから得られた画素値D54(x,y)を平均化することで出力画像Doutの画素値Dout(x,y)を算出する。
 以上のようにして求められた画素値Dout(x,y)を有する画素の集合により出力画像Doutが形成される。
 高解像度画像D54と同様に、出力画像Doutも、補間画像D52と水平方向及び垂直方向の画素数が同じであり、出力画像Doutにおける各画素の配置は、図5(b)に示される補間画像D52における各画素の配置と同じである。
 係数データ記憶部57は、補間画像の特徴成分と高解像度画像の特徴成分との対応関係を表す複数個の係数データを記憶する。係数データは、画像内の各部における画素値の変化のパターンに対応して定められている。画像の各部分がどのようなパターンを有するかは、パターン判別部56により判定される。
 図11は、係数データ記憶部57が記憶する複数個の係数データD57を表す。図11に示す例では、各係数データD57で表される係数の組は、式(1)或いは式(2)で用いたNH×NH行NL×NL列の行列Mを構成するものであり、選択コードD56の値0、1、…、NP-1(NPは選択コードが取り得る値の数)の各々に対して定義されている。そして、選択コードD56を係数データ記憶部57に入力すると、入力された選択コードD56の値に対応する(予め対応付けられた)係数データが選択される。
 パターン判別部56は、入力画像Dinのうちの補間画像D52の各パッチに対応する局所領域の特徴を判別し、判別結果に基づいて選択コードD56を生成する。
 図4のパターン判別部56は、図12に示すように、局所領域抽出部71と、領域内平均算出部72と、比較コード生成部73と、選択コード生成部74とを有する。
 図示の例では、選択コード生成部74は、2値パターンコード生成部75で構成されている。
 局所領域抽出部71は、入力画像Dinから、上記の補間画像のパッチLPcに対応する部分を局所領域として切出し、切出した局所領域内の画素の画素値を表すデータを領域内平均算出部72及び比較コード生成部73に供給する。
 図13に示すように、局所領域APcは例えば、NA×NA個の画素から成る矩形の領域である。NAは例えば3であり、水平方向における局所領域のピッチ(局所領域の中心間の距離)APPh、及び垂直方向における局所領域のピッチ(局所領域の中心間の距離)APPvは、ともに1画素ピッチである。
 切出された局所領域APc内における画素の位置を、当該局所領域の中心画素に対するオフセット座標(s,t)(但し、s=-1~1、t=-1~1)で表し、その画素値をIN(s,t)で表す。
 領域内平均算出部72は、局所領域抽出部71から供給される各局所領域APcの画素の画素値IN(s,t)の平均値AVEを求める。
 平均AVEは、各局所領域内のすべての画素の画素値の単純平均であってもよいし、加重平均、例えば、中心画素に対する重み付けが大きくなるようにした加重平均であってもよい。加重平均を求める演算の例を、次式(5)に示す。
Figure JPOXMLDOC01-appb-M000005
 比較コード生成部73は、領域内平均算出部72から出力された各局所領域内の画素の画素値の平均値AVEと、局所領域抽出部71から出力された当該局所領域内の中心に位置する画素以外の画素(周辺画素)の画素値IN(s,t)との大小比較を行い、各周辺画素についての比較結果を示す2値比較コードD(s,t)を出力する。
 例えば、画素値IN(s,t)が、平均値AVE未満の場合は比較コードD(s,t)を「0b」とし、画素値IN(s,t)が平均値AVE以上の場合は比較コードD(s,t)を「1b」として出力する。
 上記の比較コードD(s,t)の生成処理は次式(6)で表される。
Figure JPOXMLDOC01-appb-M000006
 「0b」、「1b」はそれぞれ十進数の「0」、「1」に相当する。
 なお、画素値IN(s,t)が平均値AVEと等しい場合、上記の例では比較コードD(s,t)を「0b」としているが、この場合に比較コードD(s,t)を「1b」としても良い。要するに、比較コード生成部73は、画素値IN(s,t)が平均値AVE以上か否かの判定、及び画素値IN(s,t)が平均値AVE以下か否かの判定のいずれかを行うものであれば良い。
 また、比較コード「0b」、「1b」の割り当てを上記とは逆にしても良い。要するに、比較コード生成部73は、判定結果に応じて第1の値又は第2の値を出力するものであれば良い。
 2値パターンコード生成部75は、各局所領域について比較コード生成部73で生成された、8つの周辺画素についての比較コードD(s,t)を連結して2値パターンコードPnaを生成する。このようにして生成される2値パターンコードPnaは、比較コードD(s,t)を、対応する画素の位置に応じて予め定められた順序で並べて連結することで得られる数列である。
 図14(a)は、入力画像Dinの1つの局所領域の9つの画素の画素値IN(s,t)を、それぞれの画素の位置(s,t)に示すとともに、比較コード生成部73への画素値IN(s,t)の入力順を矢印付きの線ARaで示している。
 図14(b)は、比較コード生成部73への、1つの局所領域の9つの画素の画素値IN(s,t)を入力順に示している。画素値IN(s,t)は、図14(b)において左から右へという順に入力される。
 図14(a)及び(b)に示すように、まず、局所領域の中心に位置する画素が選択されてその画素値IN(0,0)が入力される。続いて左上隅の画素が選択されてその画素値IN(-1,-1)が入力され、それに続いて図に矢印付きの線ARaで示すように、反時計回りに周辺画素が順次選択されてそれぞれの画素値が入力される。
 なお、画素の選択順序は、図14(a)に示すのとは逆に時計回りでも良い。また、中心画素に続いて選択される画素は左上隅の画素以外の画素であっても良い。
 図15(a)~(c)は、一つの局所領域に対して行われる、比較コード生成部73による比較及び2値パターンコード生成部75による2値パターンコードPnaの生成の例を示している。
 図15(a)において、3×3個のマス目は、それぞれ図14(a)の3×3個の画素に対応し、各マス目内の数値は、当該マス目の位置の画素の画素値を表している。
 AVEは、図示の3×3個の画素値の平均値を表し、図示の例では、平均値AVEとして「115」が領域内平均算出部72で算出され、比較コード生成部73に供給されている。
 比較コード生成部73は、平均値AVEと、図15(a)に示される8つの周辺画素の画素値IN(s,t)とを比較し、各画素値を、平均値AVE以上であれば「1b」、平均値AVE未満であれば「0b」に二値化することで、図15(b)に示される比較コードD(s,t)、即ち、D(-1,-1)、D(-1,0)、D(-1,1)、D(0,-1)、D(0,1)、D(1,-1)、D(1,0)、D(1,1)を順に生成し、出力する。
 比較コード生成部73からの2値比較コードD(s,t)の出力順序は、図15(b)に矢印付きの線ARbで示す如くである。
 2値パターンコード生成部75は、比較コード生成部73から図15(b)に示される順に出力される比較コードD(s,t)を順に並べて連結することによって、図15(c)に示される8ビットの2値パターンコードPnaを生成する。即ち、座標(s,t)=(-1,-1)の画素の比較コードD(-1,-1)を第1ビット、座標(s,t)=(-1,0)の画素の比較コードD(-1,0)を第2ビット、以降、図15(b)に矢印付きの線ARbで示すように、反時計回りに順次比較コードD(s,t)を並べる(各ビット位置に割り当てる)ことによって、図15(c)に示される8ビットの2値パターンコードPnaを生成する。2値パターンコードPnaの生成は、次式(7)で表される。
Figure JPOXMLDOC01-appb-M000007
 抽出された局所領域の3×3画素の画素値が図15(a)に示す如くである場合、式(7)により決定される2値パターンコードPnaは、図15(c)に示すように、十進数の「49」に相当するものとなる。
 このようにして生成された2値パターンコードPnaは、選択コードD56として出力される。
 図11で説明したように、係数データ記憶部57は、選択コードD56の値0、1、…、NP-1の各々に対して、式(1)或いは式(2)で用いるNH×NH行NL×NL列の要素(係数)から成る行列Mを記憶している。
 上記の例のように、2値パターンコードPnaが8個の画素についての2値比較コードD(s,t)の組合せ、即ち8ビットの2値の比較コードから成る場合、2値パターンコードPna、従って、選択コードD56の取り得る値の数は256である。この場合、係数データ記憶部57には、256個の係数データが記憶されている。
 係数データ読出し部58は、係数データ記憶部57に記憶されている256個の係数データD57のうち、2値パターンコードPna(選択コードD56)に対応する係数データを読出して、選択された係数データD58として出力する。
 以下、上記の画像拡大装置の動作を図16のフローチャートを参照して説明する。
 図16は、実施の形態1に係る画像拡大装置における処理の手順を表す。
 まず、線形補間ステップS11にて、線形補間部52が入力画像Dinを線形補間部52により拡大して補間画像D52を生成する。
 次にパッチ抽出ステップS12において高解像度パッチ生成部54の特徴成分分離部62が、それぞれ補間画像D52の一部を成す複数のパッチLPcのうちの一つを選択して抽出する。
 パッチの選択は例えばラスター順に、例えば画像を左上隅から右下隅へ(上から下へ、かつ同じ高さ位置においては左から右へ)と言う順に行われる。
 次に、ステップS13からステップS17において、選択されたパッチに対する処理を行う。
 選択されたパッチに対する処理(ステップS13からステップS17)においては、まず、特徴成分分離ステップS13にて、特徴成分分離部62が、各補間画像パッチLPcを低解像度の特徴成分D62Hと非特徴成分D62Lに分離する。
 ステップS13の処理と並行して、パターン判別ステップS14において、パターン判別部56が、各パッチに対応する入力画像Dinの局所領域APcの画素を用いてパターンを判別し、選択コードD56を生成する。
 次に、係数データ読出しステップS15において、係数データ読出し部58が、ステップS14で生成された選択コードD56に対応する係数データを係数データ記憶部57から読み出して出力する。
 ステップS13及びステップS15の次に、高解像度化変換ステップS16において、高解像度化変換部64が、ステップS13で得られた補間画像の各パッチの特徴成分D62Hに対して、ステップS15で選択した係数データD58を用いて演算を行い、低解像度の特徴成分D62Hから高解像度の特徴成分D64Hへの変換を行う。
 次に、ステップS17において、特徴成分合成部66が、ステップS13で分離した非特徴成分D62Lを、ステップS16で生成された高解像度の特徴成分D64Hと合成して、高解像度パッチを生成する。
 次に判定ステップS18において、画像中のすべてのパッチについてのステップS12~S17の処理が行われたか否かの判定を行う。この判定は例えば特徴成分分離部62によって行われる。まだ処理されていないパッチがあれば(ステップS18でNO)、ステップS12に戻り、次のパッチを選択する。
 ステップS18ですべてのパッチについての処理が終わっていれば、パッチ平均化ステップS19に進み、パッチ平均化部55が、高解像度画像D54の各画素についてパッチ毎の処理で得られた高解像度パッチHPcの画素値を平均化し、出力画像Doutの各画素の画素値Dout(x,y)を算出する。このようにして算出した画素値Dout(x,y)の集合により、出力画像Doutが形成される。
 なお、画像内のすべてのパッチが終わらなくても、高解像度画像D54の各画素についてそれが属するすべてのパッチについてステップS12~S17の処理が終わったら、直ちに当該画素についてステップS19の処理を行うようにしても良い。この場合、ステップS12~S17の処理と、ステップS19の処理とが並行して行われることになる。
 図16のパターン判別ステップS14の処理の詳細を図17に示す。
 図示のように、まず、局所領域抽出ステップS21において、局所領域抽出部71が局所領域を抽出する。この場合、ステップS12で補間画像D52から選択されるパッチLPcに対応する局所領域APcが切出され、切出された局所領域APcのデータが取得される。
 次に、領域内平均算出ステップS22において、領域内平均算出部72が、切出された局所領域APc内の画素の平均値AVEを算出する。
 次に、比較コード生成ステップS23において、比較コード生成部73が、8つの周辺画素の各々について、当該画素の画素値と平均値AVEとの比較により2値比較コードD(s,t)を求める。
 次に、選択コード生成ステップS24において、選択コード生成部74が、8つの周辺画素についての2値比較コードD(s,t)を組合せることで2値パターンコードPnaを生成し、選択コードとして出力する。
 以上が、実施の形態1に係る画像拡大装置の動作の説明である。
 次に、係数データD57の生成方法について説明する。係数データD57は、前述したように、教師画像から生成された補間画像の特徴成分D62Hと高解像度画像の特徴成分D64Hのペアの関係を表すものであり、予め学習を行って係数データ記憶部57に記憶させておく。
 図18は、係数データの生成に用いられる装置(係数データ生成装置)を示している。
 係数データの生成には、まず、画像縮小部101で、教師画像となる高解像度画像Dti(図19(a))を縮小し、縮小画像(低解像度画像)D101(図19(b))を生成する。高解像度画像Dtiの解像度は、出力画像Doutと同じであり、画像縮小部101による画像縮小の縮小率は、線形補間部52における拡大率と同じである。縮小は間引きによって行っても良く、平均化によって行っても良い。図19(b)の縮小画像D101の画素は、図19(a)の高解像度画像Dtiの画素のうちの黒丸で示される画素に対応する位置にある。
 線形補間部102は、縮小画像D101(図19(b))を線形補間により拡大して補間画像、即ち低解像度拡大画像D102(図19(c))を生成する。線形補間部102の処理は、図4の線形補間部の処理と同じである。図19(c)の低解像度拡大画像D102の画素のうち、黒丸で示される画素は、図19(b)に示される縮小画像D101の画素に対応する位置にある画素である。
 特徴成分分離部103は、低解像度拡大画像D102から、複数のパッチを切出し、各パッチの特徴成分を抽出する。即ち、特徴成分分離部103は、低解像度拡大画像D102内の、縮小画像D101の画素に対応する位置の画素(図19(c)に黒丸で示す)から、複数の画素を選択し、選択した複数の画素の各々を中心とするNL×NL個の画素の大きさのパッチLPc(図7のLPcと同様のもの)を切出し、切出された複数のパッチの各々について、当該パッチ内のNL×NL個の画素の平均値tlMeanを求め、各々の画素の画素値から平均値tlMeanを減算することで得られるNL×NL個の差分値を特徴量とし、この特徴量を予め定められた順番で並べることで得られる列ベクトルを特徴成分D103Hとして出力する。特徴成分D103Hを構成するNL×NL個の特徴量を対応する画素と同様に配列したものを低解像度パッチと言う。
 なお、図6の特徴成分分離部62は、補間画像D52から一定の間隔で複数のパッチを切出し、補間画像D52nのすべての画素の各々が少なくとも一つのパッチに属するようにするが、図18の特徴成分分離部103には、パッチの抽出に関しそのような制約はなく、低解像度拡大画像D102の異なる部分をパッチとして抽出すればよい。例えば、縮小画像D101の画素に対応する低解像度拡大画像D102のすべての画素が順次パッチの中心となるようにパッチを切出しても良く、縮小画像D101の画素に対応する低解像度拡大画像D102の画素からランダムに選択したものが順次パッチの中心となるように、パッチを切出しても良い。
 特徴成分分離部104は、高解像度画像Dtiのうち、特徴成分分離部103で特徴成分の分離を行うことで得られるパッチの中心の画素に対応する画素を中心とするパッチを切出し、該パッチの特徴成分を抽出する。即ち、特徴成分分離部104は、高解像度画像(教師画像)Dti内の、特徴成分分離部103で切出したパッチの各々の中心の画素に対応する画素を中心とし、各々NL×NL個の画素から成る複数のパッチTPc(図7のLPcと同じ大きさを有するもの)を切出し、切出したパッチの各々について、当該パッチ内のNL×NL個の画素の平均値thMeanを求め、各々の画素の画素値から平均値thMeanを減算することで得られるNL×NL個の差分値を特徴量とし、この特徴量を予め定められた順番で並べることで得られる列ベクトルを、特徴成分D104Hとして出力する。特徴成分D104Hを構成するNL×NL個の特徴量を対応する画素と同様に配列したものを高解像度パッチと言う。
 パターン判別部105は、縮小画像D101のうち、特徴成分分離部103で特徴成分の分離を行うことで得られるパッチに対応する局所領域に対してパターン判別を行って判別の結果を示すコード(パターン判別コード)D105を生成する。このパターン判別コードD105は、画像拡大装置の選択コードD56に対応するものであるので、以下では選択コードと呼ぶ。パターン判別部105によるパターン判別は、図12のパターン判別部56における処理と同内容のものである。
 特徴成分分離部103で特徴成分の分離を行うことで得られるパッチ(低解像度パッチ)と、特徴成分分離部104で特徴成分の分離を行うことで得られるパッチ(高解像度パッチ)とはともに、特徴成分分離部62で特徴成分の分離を行うことで得られるパッチと同じ大きさ(NL×NL)を有する。
 縮小画像D101のある画素に対応する低解像度拡大画像D102の画素を中心とし、特徴成分分離部103で特徴成分の分離を行うことで得られた低解像度パッチと、縮小画像D101の同じ画素に対応する教師画像Dtiの画素を中心とし、特徴成分分離部104で特徴成分の分離を行うことで得られた高解像度パッチとでペア(パッチペア)が構成される。
 さらに、縮小画像D102の上記と同じ画素を中心とする局所領域についてパターン判別部105で、パターン判別を行った結果得られた選択コードD105が、上記のパッチペアに対応する選択コードとして得られる。
 分類部106は、各ペアを構成するパッチの特徴成分D103H及びD104Hを互いに対応付け、各ペアを、対応する選択コードD105の値に従って分類(グループ分け)する。
 分類の結果を表に纏めれば例えば図20に示す如くとなる。図20で選択コードD105の欄には、パターン判別部56に関して説明した選択コードD56の値(0から255までの値)が予め記入されている。
 ペア番号欄には、選択コードD105に対応するペア番号(すべて「xx」で示すがその値は異なる)が記入されている。例えばあるペアについて、当該ペアを構成するパッチに対応する局所領域についてパターン判別の結果、ある値を持つ選択コードD105が生成されたら、その値の欄に当該ペアの番号が記入される。ペアの番号として、ペアを構成するパッチの中心の画素の座標を表すデータを用いても良い。
 このようなグループ分けの結果、選択コードの各値と、それに対応するペア番号が対応付けて記憶される。
 以上、一つの教師画像Dtiが供給されて、それに対するパターン判別、パッチペアの形成及び分類を行う場合を想定して説明したが、複数の教師画像Dtiを順次供給して、パターン判別、パッチペアの形成、及び分類を行い、これらの処理の結果を分類部106に蓄積しても良い。
 演算部107は、選択コードD105の値が同じであるグループごとに、低解像度パッチと高解像度パッチの関係を近似するための係数の値を線形回帰演算により導出する。この演算は式(8)で表される。
Figure JPOXMLDOC01-appb-M000008
 式(8)で、
 Msは、当該グループの選択コードに対応するNL×NL行NL×NL列の要素(係数)から成る行列(係数行列)、
 Xtは、図21に示すように、当該グループに分類されたペアを構成する低解像度パッチの特徴成分D103Hを構成するNL×NL個の特徴量、即ち差分値を列方向に並べ、互いに異なるパッチについての特徴成分D103Hを行方向に並べた(異なる列に配置した)行列、
 Ytは、図22に示すように、当該グループに分類されたペアを構成する高解像度パッチの特徴成分D104Hを構成するNL×NL個の特徴量、即ち差分値を列方向に並べ、互いに異なるパッチについての特徴成分D104Hを行方向に並べた(異なる列に配置した)行列、
 λは予め定められた定数、
 eye(NL×NL,NL×NL)はNL行NL列の単位行列である。
 また、Xt、YtはそれぞれXt、Ytの転置行列である。
 なお、各グループ内でパッチの数が(NL×NL)個に満たない場合は、Msとして単位行列を出力する。
 係数データ抽出部108は、上記のようにして得られたNL×NL行NL×NL列の行列Msから、高解像度パッチHPcを構成するNH×NH個の画素に対応する要素(NH×NH個の画素の特徴成分D64Hの算出に用いられる係数)だけを取り出したNH×NH行NL×NL列の行列Mを抽出して、抽出した行列Mを表すデータを係数データD57として係数データ記憶部57に記憶させる。
 図23に示される、NL=5、NH=3の場合について、NH×NH行NL×NL列(9行25列)の行列Mの生成のため、NL×NL行NL×NL列(25行25列)の行列Msから取り出されるNH×NH行(9行)が図24に示されている。図23には、NL×NL個の画素から成るパッチ内の画素が符号P(1)~P(25)で示される。符号P(1)~P(25)のうち、括弧内の数値が画素に付与された番号である。図23に示されるNL×NL個の画素から成るパッチLPcのうちの、高解像度パッチHPcを構成するNH×NH個の画素は、太線HPcで囲まれた部分内の画素であり、図10のNH×NH個の画素Q(1)~Q(9)に対応する。
 図24において、行を表す符号R(1)~R(25)のうち括弧内の数値が行の番号を表す。図24の行R(1)~R(25)は、それぞれ画素P(1)~(25)に対応し、25(=NL×NL)個の係数を含む。図24で取り出される行には左端に丸印が付してある。取り出されるのは、図10のNH×NH個の画素Q(1)~Q(9)の算出に用いられる係数から成る行、即ち図23において、NL×NL個の画素のうち、太線HPcで囲まれる領域内にある、画素(P(7)、P(8)、P(9)、P(12)、P(13)、P(14)、P(17)、P(18)、P(19)に対応する行R(7)、R(8)、R(9)、R(12)、R(13)、R(14)、R(17)、R(18)、R(19))である。
 以上の処理により1つの選択コードに対応する係数データが生成され、係数データ記憶部57に記憶される。
 以上の処理が選択コードの256個の値の各々について行われ、係数データ記憶部57には、選択コードの256個の値の各々に対応する係数データD57が記憶される。
 上記の係数データの生成方法は、高解像度化変換部64による変換が線形である場合についてのものであるが、非線形である場合についても公知の最適化手法を用いて係数データを算出することが可能である。
 以上が係数データの生成方法の説明である。
 なお、図12に示すパターン判別部は、領域内平均算出部72で算出した平均値AVEを用いて比較コード生成部73で周辺画素の画素値との比較を行っているが、局所領域内の中心画素の画素値IN(0,0)と、周辺画素の画素値との比較を行うこととしても良い。要するに、比較コード生成部73では、平均値AVE又は中心画素の画素値IN(0,0)を基準値として周辺画素の画素値との比較を行えば良い。
 なお、中心画素の画素値は、加重平均において、周辺画素に対する重み付けをゼロとして、中心画素の画素値IN(0,0)そのものを平均値AVEとすることで得られた値と見ることもできる。
 以上のように、本実施の形態1では、入力画像の各局所領域から得られる基準値と、当該局所領域内の周辺画素との大小比較を行い、比較の結果として得られる2値比較コードD(s,t)を組合せることで2値パターンコードPnaを生成し、該2値パターンコードPnaを選択コードとして、係数データを読み出す。8つの周辺画素についての2値比較コードD(s,t)の組は、2の8乗=256個あり、従って、2値パターンコードPnaは256個の値のいずれかを表す。係数データ記憶部57は、256個の係数データ(各々、1組の係数を表すデータを含む)を記憶しており、2値パターンコードPnaに応じて、対応する係数データを出力する。このようにすることによって、係数データ記憶部57に記憶しておく必要のある係数データの数を256に抑えることができる。従って、係数データ記憶部57の記憶容量を小さくすることができ、回路規模を小さくすることができる。記憶容量及び回路規模を小さくすることで、係数データ記憶部57を集積回路で構成する場合にチップサイズを小さくすることが可能となる。チップサイズを小さくすることで、消費電力を少なくすることが可能となる。
実施の形態2.
 上記の実施の形態1には、以下のような問題がある。即ち、各局所領域の平均値又は中心画素の画素値を基準値として周辺画素の画素値との比較を行い、比較結果を2値の比較コードD(s,t)で表し、2値の比較コードを組合せることで得られる2値パターンコードPnaを選択コードD56として係数データを読み出している。このため、周辺画素の画素値が基準値に近い場合にも、基準値よりも大きいか否かの判定をして、判定結果に基づいて2値パターンコードを生成し、生成した2値パターンコードで係数データの選択を行う。従って、周辺画素が基準値(平均値又は中心画素の画素値)に近い場合に、係数データとして必ずしも適切ではないものが用いられてしまい、出力画像の画質を劣化させることがある。
 そこで、実施の形態2では、各局所領域から得られた基準値と、周辺画素の画素値との比較結果を3値の比較コードで表し、3値の比較コードを組合せることで得られる3値パターンコードを用いて係数データの選択を行う。
 この場合3値の比較コードは、周辺画素の画素値が基準値と同程度(差が小さい)であるか、同程度ではなく、基準値より大きいか、同程度ではなく、基準値より小さいかに応じて、3値のいずれかを取る。
 局所領域のサイズが実施の形態1と同様に3×3画素である場合、各局所領域の周辺画素は8個あり、周辺画素の各々について3値の比較コードが生成されるため、その組合せは、3の8乗=6561個存在する。
 係数データ記憶部には、この数だけの係数データを記憶しておく。このようにすることにより、実施の形態1と比較して、高解像度画像の劣化を抑制することができる。
 図25は、実施の形態2の画像拡大装置50bを示している。図示の画像拡大装置50bは実施の形態1の画像拡大装置50の代わりに用い得るものであり、線形補間部52と、高解像度パッチ生成部54と、パターン判別部56bと、係数データ記憶部57bと、係数データ読出し部58bと、パッチ平均化部55とを有する。
 線形補間部52、高解像度パッチ生成部54、及びパッチ平均化部55は、実施の形態1と同じである。
 パターン判別部56bは、図26に示すように、局所領域抽出部71と、領域内平均算出部72と、比較コード生成部83と、選択コード生成部84とを有する。
 図示の例では、選択コード生成部84は、3値パターンコード生成部85で構成されている。
 局所領域抽出部71及び領域内平均算出部72は、実施の形態1に関し、図12を参照して説明したものと同じである。
 比較コード生成部83は、領域内平均算出部72から出力された各局所領域内の画素の画素値の平均値AVEと、局所領域抽出部71から出力された当該局所領域内の周辺画素の画素値IN(s,t)との大小比較を行い、各周辺画素についての比較結果を示す3値比較コードT(s,t)を出力する。
 各比較コードT(s,t)は2ビットで表される。
 例えば、画素値IN(s,t)が平均値AVEより小さく、且つその差の絶対値が閾値α以上である場合は比較コードT(s,t)を「00b」とし、画素値IN(s,t)の値が平均値AVEより大きく、且つその差の絶対値が閾値α以上である場合は比較コードT(s,t)を「10b」とし、画素値IN(s,t)と平均値AVEの差の絶対値が閾値α未満の場合は比較コードT(s,t)を「01b」とする。
 上記の比較コードT(s,t)の生成処理は、次式(9)で表される。
Figure JPOXMLDOC01-appb-M000009
 「00b」、「10b」、「01b」はそれぞれ十進数の「0」、「2」、「1」に相当する。
 なお、比較コードの割り当ては上記の例に限定されず、例えば、比較コードとして「11b」を用いても良い。また、比較コード「0b」、「1b」の割り当てを上記とは逆にしても良い。要するに、比較コード生成部83は、判定結果に応じて第1の値、第2の値又は第3の値を出力するものであれば良い。
 3値パターンコード生成部85は、各局所領域について比較コード生成部83で生成された、8つの周辺画素についての比較コードT(s,t)を連結して3値パターンコードPnbを生成する。このようにして生成される3値パターンコードPnbは、比較コードT(s,t)を、対応する画素の位置に応じて予め定められた順序で並べて連結することで得られる数列である。
 比較コード生成部83への1つの局所領域の9つの画素の画素値IN(s,t)の入力順は、実施の形態1に関し、図14(a)及び(b)を参照して説明したのと同様である。
 図27(a)~(c)は、一つの局所領域に対して行われる、比較コード生成部83による比較及び3値パターンコード生成部85による3値パターンコードPnbの生成の例を示している。
 比較コード生成部83は、平均値AVEと、図27(a)に示される8つの周辺画素の画素値IN(s,t)とを比較し、図27(b)に示される3値の比較コードT(s,t)、即ち、T(-1,-1)、T(-1,0)、T(-1,1)、T(0,-1)、T(0,1)、T(1,-1)、T(1,0)、T(1,1)を順に生成し、出力する。
 比較コード生成部83からの3値比較コードT(s,t)の出力順序は、図27(b)に矢印付きの線ARcで示す如くである。
 3値パターンコード生成部85は、比較コード生成部83から図27(b)に示される順に出力される2ビットの比較コードT(s,t)を順に並べて連結することによって、図27(c)に示される16ビットの3値パターンコードPnbを生成する。即ち、座標(s,t)=(-1,-1)の画素の比較コードT(-1,-1)を第1及び第2ビット、座標(s,t)=(-1,0)の画素の比較コードT(-1,0)を第3及び第4ビット、以降、図27(b)に矢印付きの線ARcで示すように、反時計回りに順次、2ビットの比較コードT(s,t)を並べる(各ビット位置に割り当てる)ことによって、図27(c)に示される16ビットの3値パターンコードPnbを生成する。3値パターンコードPnbの生成は、次式(10)で表される。
Figure JPOXMLDOC01-appb-M000010
 抽出された局所領域の3×3画素の画素値が図27(a)に示す如くである場合、式(10)により決定される3値パターンコードPnbは、図27(c)に示すように、十進数の「17926」に相当するものとなる。
 このようにして生成された3値パターンコードPnbは、選択コードD56bとして出力される。
 係数データ記憶部57bは、3値パターンコードPnb(従って、選択コードD56b)が取り得るすべての値にそれぞれ対応する係数データを記憶している。
 上記の例のように、3値パターンコードPnbが8個の画素についての3値比較コードT(s,t)の組合せから成る場合、3値パターンコードPnb、従って選択コードD56bの取り得る値の数は6561である。この場合、係数データ記憶部57bには、6561個の係数データが記憶されている。
 係数データ読出し部58bは、係数データ記憶部57bに記憶されている6561個の係数データのうち、3値パターンコードPnb(選択コードD56b)に対応する係数データを読み出して、選択された係数データとして出力する。
 実施の形態1と同様に、高解像度パッチ生成部54は、補間画像D52の各パッチLPcについて、係数データ読出し部58bによって読み出された係数データD58bを用いて、高解像度パッチHPcを生成する。
 パッチ平均化部55は、実施の形態1で説明したのと同様に、高解像度画像D54の各画素についての複数の高解像度パッチHPcの画素値を平均化することで出力画像Doutの画素値Dout(x,y)を算出する。
 実施の形態2の動作は全体として実施の形態1に関し図16を参照して説明したのと同じである。但し、図16のステップS14として、図17で示す処理の代わりに、図28に示す処理が行われる。
 図28のステップS21、S22は、図17と同じである。
 比較コード生成ステップS33では、比較コード生成部83が、8つの周辺画素の各々について、当該画素の画素値と平均値AVEとの比較により3値比較コードT(s,t)を求める。
 選択コード生成ステップS34では、選択コード生成部84が、8つの周辺画素についての3値比較コードT(s,t)を組合せることで3値パターンコードPnbを生成し、選択コードD56bとして出力する。
 上記の係数データ記憶部57bに記憶される係数データの生成には、図18に示したのと同様の装置を用い得る。但し、パターン判別部105として、図12のパターン判別部56と同様のものの代わりに、図26のパターン判別部56bと同様のものを用いる必要がある。
 このように、実施の形態2においては、入力画像の各局所領域から得られる基準値と、当該局所領域内の周辺画素との大小比較を行い、比較の結果として得られる3値比較コードT(s,t)を組合せることで3値パターンコードPnbを生成し、該3値パターンコードPnbを選択コードとして、係数データを読み出す。実施の形態1で説明した2値パターンコードPnaを用いる場合に比べて、画像の特徴をより細かく分類することが可能となり、鮮鋭感のより高い拡大画像を得ることができる。
実施の形態3.
 上記の実施の形態2には、以下のような問題がある。即ち、係数データの数が6561個と多く、係数データ記憶部57bとして容量の大きいものが必要である。
 実施の形態3は、この問題を解決するものであり、係数データ記憶部には、2値パターンコードに対応する係数データと、局所領域内に高周波成分が含まれない場合に生成される3値パターンコードに対応する係数データを記憶しておき、局所領域内に高周波成分が含まれる場合には、2値パターンコードを選択コードとして用い、局所領域内に高周波成分が含まれない場合には、3値パターンコードを選択コードとして用いる。
 画像中の空間周波数が高い成分は、ノイズによるもの、或いは芝、砂嵐等の細かい模様によるものであることが多く、画像の拡大時に忠実に再現しなくても人の目には違和感となって現れない。このことに着目し、実施の形態3では、高周波成分が含まれている局所領域については、2値パターンコードに対応する局所領域を用いることとしている。これにより、実施の形態2の場合に比べて、係数データ記憶部の容量を抑制しつつ、画質の劣化を抑えた拡大画像の生成を可能にしている。
 図29は、実施の形態3の画像拡大装置50cを示している。図示の画像拡大装置50cは実施の形態1の画像拡大装置50の代わりに用い得るものであり、線形補間部52と、高解像度パッチ生成部54と、パターン判別部56cと、係数データ記憶部57cと、係数データ読出し部58cと、パッチ平均化部55とを有する。
 線形補間部52、高解像度パッチ生成部54及びパッチ平均化部55は、実施の形態1と同じである。
 パターン判別部56cは、図30に示すように、局所領域抽出部71と、領域内平均算出部72と、比較コード生成部93と、選択コード生成部94とを有する。選択コード生成部94は、2値パターンコード生成部75と、3値パターンコード生成部95と、高周波成分検出部98と、コード選択部99とを有する。
 3値パターンコード生成部95は、コード連結部96と、コード変換部97とを有する。
 2値パターンコード生成部75は、実施の形態1の2値パターンコード生成部75と同じものである。
 局所領域抽出部71及び領域内平均算出部72は、実施の形態1に関し、図12を参照して説明したものと同じである。
 比較コード生成部93は、領域内平均算出部72から出力された各局所領域内の画素の画素値の平均値AVEと、局所領域抽出部71から出力された当該局所領域の8つの周辺画素の画素値IN(s,t)との大小比較を行い、各周辺画素についての比較結果を示す2値比較コードD(s,t)及び3値比較コードT(s,t)を出力する。
 このような処理のため、比較コード生成部93は、2値比較コード生成部73cと3値比較コード生成部83cとを含む。比較コード生成部73c及び83cは、それぞれ図12の比較コード生成部73及び図26の比較コード生成部83と同じ処理を行うものである。
 即ち、比較コード生成部73cは、実施の形態1の比較コード生成部73に関して説明したのと同様に、領域内平均算出部72から出力された各局所領域内の画素の画素値の平均値AVEと、局所領域抽出部71から出力された当該局所領域内の周辺画素の画素値IN(s,t)との大小比較を行い、各周辺画素についての比較結果を示す2値比較コードD(s,t)を出力する。
 例えば、画素値IN(s,t)が、平均値AVE未満の場合は比較コードD(s,t)を「0b」とし、平均値AVE以上の場合は比較コードD(s,t)を「1b」として出力する。
 上記の比較コードD(s,t)の生成処理は、上記の式(6)で表される。
 なお、画素値IN(s,t)が平均値AVEと等しい場合、上記の例では比較コードD(s,t)を「0b」としているが、この場合に比較コードD(s,t)を「1b」としても良い。要するに、比較コード生成部73は、画素値IN(s,t)が平均値AVE以上か否かの判定、及び画素値IN(s,t)が平均値AVE以下か否かの判定のいずれかを行うものであれば良い。
 また、比較コード「0b」、「1b」の割り当てを上記とは逆にしても良い。要するに、比較コード生成部73は、判定結果に応じて第1の値又は第2の値を出力するものであれば良い。
 比較コード生成部83cは、実施の形態2の比較コード生成部83と同様に、領域内平均算出部72から出力された各局所領域内の画素の画素値の平均値AVEと、局所領域抽出部71から出力された当該局所領域内の周辺画素の画素値IN(s,t)との大小比較を行い、各周辺画素についての比較結果を示す3値比較コードT(s,t)を出力する。
 各比較コードT(s,t)は2ビットで表される。
 例えば、画素値IN(s,t)が平均値AVEより小さく、且つその差の絶対値が閾値α以上である場合は比較コードT(s,t)を「00b」とし、画素値IN(s,t)の値が平均値AVEより大きく、且つその差の絶対値が閾値α以上である場合は比較コードT(s,t)を「10b」とし、画素値IN(s,t)と平均値AVEの差の絶対値が閾値α未満の場合は比較コードT(s,t)を「01b」とする。
 上記の比較コードT(s,t)の生成処理は、上記の式(9)で表される。
 なお、比較コードの割り当ては上記の例には限定されず、例えば、比較コードとして「11b」を用いても良い。また、比較コード「0b」、「1b」の割り当てを上記とは逆にしても良い。要するに、比較コード生成部83cは、判定結果に応じて第1の値、第2の値又は第3の値を出力するものであれば良い。
 2値パターンコード生成部75は、実施の形態1と同様に、各局所領域について比較コード生成部73cで生成された、8つの周辺画素についての比較コードD(s,t)を連結して2値パターンコードPnaを生成する。
 コード連結部96は、実施の形態2の3値パターンコード生成部85と同様に、各局所領域について比較コード生成部83cで生成された、8つの周辺画素についての比較コードT(s,t)を連結して3値パターンコードPnbを生成する。
 コード変換部97は、コード連結部96から出力された連結コードPnbから、取り得る値の範囲がより狭い(より少ないビット数で表現可能な)コードを生成して、3値パターンコードPncとして出力する。コード変換部97の出力が3値パターンコード生成部95の出力となる。
 高周波成分検出部98は、各局所領域内の画素についての比較コード生成部83cによる比較の結果に基づいて当該局所領域内に高周波成分が含まれているか否か、即ち予め定められた空間周波数以上の成分が含まれているか否かの判定を行い、判定結果を示す信号SLを出力する。この信号SLは、例えば高周波成分が含まれているときは、第1の値、例えば「1」を表すものとなり、含まれていないときは、第2の値、例えば「0」を表すものとなる。
 例えば、高周波成分検出部98は、局所領域内において、それぞれ行方向又は列方向に整列した複数の画素から成る複数の群の各々に属する複数の画素の画素値を、それぞれの画素についての3値比較コードを用いて比較し、複数の群のいずれかにおいて、当該群の中央に位置する画素の画素値が極大値又は極小値を取るとき、当該局所領域には、高周波成分が含まれていると判定する。この場合、当該局所領域内の中心に位置する画素については、当該画素の画素値と基準値との差の絶対値が閾値α未満であり、従ってその場合の3値の比較コードが生成されているものとして扱う。
 「画素の画素値を3値に比較コードを用いて比較する」とは、3値の比較コードT(s,t)によって、画素値が、基準値との比較の結果、画素値が基準値AVEよりも小さくて且つその差の絶対値が閾値α以上であり、従って、最も小さい値の範囲(階級)内に属するか、画素値が基準値AVEよりも大きくて且つその差の絶対値が閾値α以上であり、従って、最も大きい値の範囲(階級)に属するか、画素値と基準値AVEとの差の絶対値が閾値α未満であり、従って、中間の範囲(階級)に属するかが表されていることに鑑み、該3値の比較コードにより、画素値が属する階級を判断し、該階級同士の比較を行うことを意味する。
 画素値が最も小さい値の階級内に属する場合、当該画素についての3値の比較コードT(s,t)を第1の値とし、画素値が中間の階級に属する場合、当該画素についての3値の比較コードT(s,t)を第2の値とし、画素値が最も大きい値の階級に属する場合、当該画素についての3値の比較コードT(s,t)を第2の値よりも大きい第3の値とし、上記の例のように第1の値(00b)よりも第2の値(01b)が大きく、且つ第2の値よりも第3の値(10b)が大きいという条件を満たすようにした場合には、各群に属する画素についての3値比較コードT(s,t)の値の大小関係を判定することにより、「3値比較コードを用いた画素値の比較」、従って中央に位置する画素の画素値が極大値又は極小値を取るか否かの判定を行うことができる。
 また、上記とは逆に、上記の第1の値よりも上記第2の値が小さく、且つ上記第2の値よりも上記第3の値が小さいという条件を満たすようにした場合にも、各群に属する画素についての3値比較コードT(s,t)の値の大小関係を判定することにより、「3値比較コードを用いた画素値の比較」、従って中央に位置する画素の画素値が極大値又は極小値を取るか否かの判定を容易に行うことができる。
 要するに、画素値が属する階級に応じて生成される3値の比較コードT(s,t)の値が、それぞれの階級に属する画素値の大きさの順(大きい順又は小さい順)に次第に大きくなるものであれば、各群に属する画素についての3値比較コードT(s,t)の値の大小関係を判定することにより、「3値比較コードを用いた画素値の比較」、従って中央に位置する画素の画素値が極大値又は極小値を取るか否かの判定を容易に行うことができる。
 コード選択部99は、2値パターンコード生成部75から出力される2値パターンコードPnaと、3値パターンコード生成部95から出力される3値パターンコードPncの何れかを選択し、選択コードD56cとして出力する。
 コード選択部99における選択は、高周波成分検出部98から出力される選択信号SLに応じて行われる。即ち、信号SLの値が「1」の場合は2値パターンコード生成部75から出力される2値パターンコードPnaが選択され、「0」の場合は3値パターンコード生成部95から出力される3値パターンコードPncが選択される。
 比較コード生成部93への各局所領域の画素の画素値を示すデータの入力順序は、実施の形態1に関し図14(a)及び(b)を参照して説明したのと同じである。
 また、比較コード生成部73cによる比較及び2値パターンコード生成部75における2値パターンコードPnaの生成は、実施の形態1に関し図15(a)~(c)を参照して説明したのと同様に行われる。この処理は、上記の式(7)で表される。
 図31(a)~(d)は、一つの局所領域に対して行われる、比較コード生成部83cによる比較及び3値パターンコード生成部95による3値パターンコードPncの生成の例を示している。
 比較コード生成部83cは、領域内平均算出部72から出力された各局所領域の平均AVEと、局所領域抽出部71から出力された当該局所領域内の図31(a)に示される8つの周辺画素の画素値IN(s,t)との比較を行い、図31(b)に示される周辺画素についての3値の比較コードT(s,t)、即ち、T(-1,-1)、T(-1,0)、T(-1,1)、T(0,-1)、T(0,1)、T(1,-1)、T(1,0)、T(1,1)を生成する。
 次に、3値パターンコード生成部95のコード連結部96が、8つの周辺画素についての3値の比較コードT(s,t)を矢印付きの線ARdで示す順序に並べて連結し、図31(c)に示される、16ビットの連結コードPnbを生成する。この処理は上記の式(10)で表される。
 次に、3値パターンコード生成部95のコード変換部97が、連結コードPnbを、図31(d)に示される取り得る値の範囲がより狭いコードに変換し、変換後のコードが3値パターンコードPncとして出力される。
 比較コード生成部83cは、以下の説明から理解されるように、8つの画素のすべてについて比較コードT(s,t)の生成を行うとは限らず、8つの画素についての順次比較の途中で、高周波成分が含まれているとの判定がなされたときは、それ以降(残りの画素についての)比較及び比較コードT(s,t)の生成を省略する。この場合には、3値パターンコードPncは生成されない。
 高周波成分検出部98は、比較コード生成部83cの出力に基づいて、各局所領域内に高周波成分が含まれているか否か(高周波成分の有無)を判定する。
 この判定は、以下の考えに基づいて行われる。即ち、例えば芝、砂嵐等の細かい模様の画像では、局所領域内において行方向又は列方向に整列した画素(図示の例では3個の画素)から成る群の各々において、中央の画素の比較コードが両端の画素の何れの比較コードとも異なり、且つ中央の画素の画素値が極大又は極小となる確率が高い。従ってそのような場合には高周波成分が含まれていると判定する。例えば、中央の画素の比較コードが「01b」で、且つ両端の画素の比較コードが何れも「00b」の場合がこれに該当する。また、中央の画素の比較コードが「00b」で、且つ両端の画素の比較コードがそれぞれ「01b」、「10b」の場合もこれに該当する。
 実施の形態3の動作は全体として実施の形態1に関し図16を参照して説明したのと同じである。但し、図16のステップS14として、図17で示す処理の代わりに、図32乃至図34に示す処理が行われる。
 図32乃至図34において、ステップS21、S22は、図17と同じである。
 ステップS22の次に、比較コード生成部83cは、平均値AVEと第1列第1行の画素の画素値IN(-1,-1)を比較し(S101)、比較結果に応じて3値比較コードT(-1,-1)を生成する(S102)。生成された3値比較コードT(-1,-1)は、コード連結部96及び高周波成分検出部98に供給される。
 次に、比較コード生成部83cは、平均値AVEと第1列第2行の画素の画素値IN(-1,0)を比較し(S103)、比較結果に応じて3値比較コードT(-1,0)を生成する(S104)。生成された3値比較コードT(-1,0)は、コード連結部96及び高周波成分検出部98に供給される。
 次に、比較コード生成部83cは、平均値AVEと第1列第3行の画素の画素値IN(-1,1)を比較し(S105)、比較結果に応じて3値比較コードT(-1,1)を生成する(S106)。生成された3値比較コードT(-1,1)は、コード連結部96及び高周波成分検出部98に供給される。
 ここまでの処理で、図35(a)に示される第1列GC1の3つ画素についての3値比較コードT(-1,-1)、T(-1,0)、及びT(-1,1)が揃う。この段階で、高周波成分検出部98は、第1列GC1の3つ画素についての3値比較コードT(-1,-1)、T(-1,0)、及びT(-1,1)に基づいて高周波成分の有無の判定を行う(S107)。
 高周波成分検出部98は、第1列GC1の画素に関し、下記の式(11)が成り立つ場合に、高周波成分が含まれていると判定する。
Figure JPOXMLDOC01-appb-M000011
 上記の式でSign{A}は、Aの符号を表す。
 上記の判定において、高周波成分が含まれていると判定されたときは(S107でYESのときは)、ステップS131に進む。
 高周波成分が含まれていないと判定されたとき(ステップS107でNOのとき)は、比較コード生成部83cは、平均値AVEと第3行第2列の画素の画素値IN(0,1)を比較し(S109)、比較結果に応じて3値比較コードT(0,1)を生成する(S110)。生成された3値比較コードT(0,1)は、コード連結部96及び高周波成分検出部98に供給される。
 次に、比較コード生成部83cは、平均値AVEと第3行第3列の画素の画素値IN(1,1)を比較し(S111)、比較結果に応じて3値比較コードT(1,1)を生成する(S112)。生成された3値比較コードT(1,1)は、コード連結部96及び高周波成分検出部98に供給される。
 ここまでの処理で、図35(a)に示される第3行GR3の3つ画素についての3値比較コードT(-1,1)、T(0,1)、及びT(1,1)が揃う。この段階で、高周波成分検出部98は、第3行GR3の3つ画素についての3値比較コードT(-1,-1)、T(-1,0)、及びT(-1,1)に基づいて高周波成分の有無の判定を行う(S113)。
 高周波成分検出部98は、第3行GR3の画素に関し、下記の式(12)が成り立つ場合に、高周波成分が含まれていると判定する。
Figure JPOXMLDOC01-appb-M000012
 上記の判定において、高周波成分が含まれていると判定されたときは(S113でYESのときは)、ステップS131に進む。
 高周波成分が含まれていないと判定されたとき(ステップS113でNOのとき)は、比較コード生成部83cは、平均値AVEと第3列第2行の画素の画素値IN(1,0)を比較し(S115)、比較結果に応じて3値比較コードT(1,0)を生成する(S116)。生成された3値比較コードT(1,0)は、コード連結部96及び高周波成分検出部98に供給される。
 ここまでの処理で、図35(b)に示される第2行GR2の、中央の画素以外の2つの画素(両端の画素)、即ち、第2行の第1列及び第3列の画素についての3値比較コードT(-1,0)、及びT(1,0)が揃う。
 この段階で、高周波成分検出部98は、図35(b)の第2行GR2の両端の画素についての3値比較コードT(-1,0)、及びT(1,0)に基づいて高周波成分の有無の判定を行う(S117)。この判定は、上記のように、中央の画素(即ち、局所領域の中心画素)についての画素値は、平均値AVEとの差が小さく、中央の画素についての3値比較コードT(0,0)は「01b」であるとの仮定に基づいて行われる。
 このように仮定すると、両端の画素の比較コードが等しく、且つ比較コードT(s,t)が「01b」以外であれば、中央の画素が極大又は極小と判断することができ、高周波成分が含まれていると判定する。そこで、高周波成分検出部98は、下記の式(13)が満たされれば、高周波成分が含まれていると判定する。
Figure JPOXMLDOC01-appb-M000013
 上記の判定において、高周波成分が含まれていると判定されたときは(S117でYESのときは)、ステップS131に進む。
 高周波成分が含まれていないと判定されたとき(ステップS117でNOのとき)は、比較コード生成部83cは、平均値AVEと第3列第1行の画素の画素値IN(1,-1)を比較し(S119)、比較結果に応じて3値比較コードT(1,-1)を生成する(S120)。生成された3値比較コードT(1,0)は、コード連結部96及び高周波成分検出部98に供給される。
 ここまでの処理で、図35(a)に示される第3列GC3の3つ画素についての3値比較コードT(1,-1)、T(1,0)、及びT(1,1)が揃う。この段階で、高周波成分検出部98は、第3列GC3の3つ画素についての3値比較コードT(1,-1)、T(1,0)、及びT(1,1)に基づいて高周波成分の有無の判定を行う(S121)。
 即ち、高周波成分検出部98は、下記の式(14)が満たされる場合には、高周波成分が含まれていると判定する。
Figure JPOXMLDOC01-appb-M000014
 上記の判定において、高周波成分が含まれていると判定されたときは(S121でYESのときは)、ステップS131に進む。
 高周波成分が含まれていないと判定されたとき(ステップS121でNOのとき)は、比較コード生成部83cは、平均値AVEと第1行第2列の画素の画素値IN(0,-1)を比較し(S123)、比較結果に応じて3値の比較コードT(0,-1)を生成する(S124)。生成された比較コードT(0,-1)は、コード連結部96及び高周波成分検出部98に供給される。
 ここまでの処理で、図35(a)に示される第1行GR1の3つ画素についての3値比較コードT(-1,-1)、T(0,-1)、及びT(1,-1)が揃う。この段階で、高周波成分検出部98は、第1行GR1の3つ画素についての3値比較コードT(-1,-1)、T(0,-1)、及びT(1,-1)に基づいて高周波成分の有無の判定を行う(S125)。
 即ち、高周波成分検出部98は、下記の式(15)が満たされる場合には、高周波成分が含まれていると判定する。
Figure JPOXMLDOC01-appb-M000015
 また、この段階で、高周波成分検出部98は、図35(b)の第2列GC2の中央の画素以外の画素(第2列GC2の第1行及び第3行の画素)についての3値比較コードT(0,-1)、及びT(0,1)に基づいて高周波成分の有無の判定を行う(S127)。この判定も、ステップS117と同様に、中央の画素(即ち、局所領域の中心画素)についての画素値は、平均値AVEとの差が小さく、中央の画素についての3値比較コードT(0,0)は「01b」であるとの仮定に基づいて行われる。
 即ち、高周波成分検出部98は、下記の式(16)が満たされれば、高周波成分が含まれていると判定する。
Figure JPOXMLDOC01-appb-M000016
 ステップS125及びS127のいずれかにおいて、高周波成分が含まれていると判定されたときは(S125又はS127の少なくとも一方でYESのときは)、ステップS131に進む。
 ステップS125及びS127の双方において、両方高周波成分が含まれていないと判定されたとき(ステップS125及びS127の両方でNOのとき)は、ステップS141に進む。
 ステップS131では、2値比較コード生成部73cが、2値比較コードD(s,t)を生成する。次に、ステップS132で、2値パターンコード生成部75が2値パターンコードPnaを生成する。次に、ステップS133で、コード選択部99が2値パターンコードPnaを選択し、選択コードD56cとして出力する。
 ステップS141では、コード連結部96が3値比較コードT(s,t)を連結して連結コードPnbを生成し、次に、ステップS142で、コード変換部97が連結コードの変換を行って3値パターンコードPncを生成し、次に、ステップS143で、コード選択部99が、3値パターンコードPncを選択して選択コードD56cとして出力する。
 上記のステップS117では、中央の画素の画素値は平均値AVEとの差が小さく、中央の画素についての3値比較コードT(0,0)が「01b」であると仮定して、式(13)により、高周波成分が含まれているか否かの判定をしているが、代わりに、中央の画素の画素値についても平均値AVEとの比較の結果に基づく3値比較コードT(0,0)を生成し、この3値比較コードを用いて、式(12)などと同様の下記の式(17)が成り立つ場合に、高周波成分が含まれていると判定することとしても良い。
Figure JPOXMLDOC01-appb-M000017
 上記のステップS127でも同様に、式(16)の代わりに、下記の式(18)が成り立つ場合に、高周波成分が含まれていると判定することとしても良い。
Figure JPOXMLDOC01-appb-M000018
 上記のように、コード変換部97は、コード連結部96から出力される連結コードを、取り得る値の範囲がより狭いコードに変換し、変換後のコードを3値パターンコードPncとして出力する。コード連結部96から出力される連結コードは、実施の形態2で述べたように、6561個の値のいずれかを取るが、コード変換部97は、コード連結部96から出力される連結コードPnbが上記の6561個の値のうちの予め定められた5776個の値のいずれかを取るときは、3値パターンコードPncを出力せず、コード連結部96から出力される連結コードPnbが上記の6561個の値のうちの予め定められた785個の値のいずれかを取るときは、対応する、変換後の3値パターンコードPncを出力する。
 コード変換部97による変換の前の連結コードと変換の後の3値パターンコードの値との対応関係の一部が図36(a)~(c)に示されている。変換前の連結コードPnbは、8つの画素A~H(図36(d))についての3値比較コードTa~Th(それぞれ図36(e)に示す関係がある)を連結した連結コード(図36(b))と、対応する十進数による番号(図36(a))とで示され、変換後の3値パターンコードPncは、十進数による番号(図36(c))のみで示されている。
 3値パターンコードPncは、3値パターンコードPnbが取り得る値とは異なる値を取るように定められる。
 コード変換部97から出力される変換後のコードPncは、高周波成分が含まれないときに生成される連結コードPnbに対して1対1に対応するものであり、コード変換部97から出力される変換後の3値パターンコードPncが取り得る値の数は、高周波成分が含まれないときに生成される連結コードPnbが取り得る値の数と同じであり、すべての変換後のコードPncの取り得る値を昇順又は降順に並べたときに、隣接する値相互間の差が1である。
 図36(b)で3値比較コードTa~Thの値を囲む点線の枠は、それらの3値比較コードを用いた判定で高周波成分が検出されたことを示す。
 図36(a)のNo.1からNo.14まで、NO.15、No.16、No.19からNo.25までの連結コードに対しては、変換後の3値パターンコードが存在せず、コード変換部97からは3値パターンコードが出力されない。
 これは、これらの番号に対応する連結コードPnb(図36(b))の場合には、高周波成分が含まれているとの判定が行われ、従って、コード選択部99では2値パターンコードPnaが選択され、3値パターンコードPncが選択されないためである。即ち、これらの場合には、3値パターンコードPncが選択されないので、コード変換部97では、変換後のコードを出力しないこととしている。
 このような処理をする結果、コード選択部99で3値パターンコードPncが選択される場合には、係数データ読出し部58cには、785個の値のいずれかを取る3値パターンコードPncが選択コードD56cとして供給される。一方、コード選択部99で2値パターンコードPnaが選択される場合には、256個の値のいずれかを取る2値パターンコードPnaが選択コードD56cとして供給される。従って、係数データ記憶部57cには、256+785=1041個の係数データが記憶されている。
 2値パターンコードPnaが選択コードD56cとなるときと、3値パターンコードPncが選択コードD56cになるときでは、選択コードD56cは異なる値となる。例えば、2値パターンコードPnaが選択されるときの選択コードD56cは0から255までの値となり、3値パターンコードPncが選択されるときの選択コードD56cは、例えば、図36(c)に示すように、256以降の値、例えば、256から1041までの値となる。
 なお、上記のように、3値パターンコードPncは、3値パターンコードPnbが取り得る値とは異なる値を取るように定められ、2値パターンコードPnaが選択コードD56cとなるときと、3値パターンコードPncが選択コードD56cになるときでは、選択コードD56cは異なる値となるようにする代わりに、2値パターンコードPnaが選択コードD56cとなるときと、3値パターンコードPncが選択コードD56cになるときでは、係数データ記憶部57cの異なる領域、或いは異なる記憶ユニットから係数データを読み出すようにしておいても良い。即ち、係数データ記憶部57cが第1の記憶領域乃至記憶ユニットと、第2の記憶領域乃至記憶ユニットとを有し、第1の記憶領域乃至記憶ユニットには、2値パターンコードPnaが選択コードD56cとなるときに読み出されるべき係数データを記憶させておき、第2の記憶領域乃至記憶ユニットには、3値パターンコードPncが選択コードD56cとなるときに読み出されるべき係数データを記憶させておき、2値パターンコードPnaが選択コードD56cとなるときには、第1の記憶領域乃至記憶ユニットが選択され、3値パターンコードPncが選択コードD56cになるときには、第2の記憶領域乃至記憶ユニットが選択されるようにしても良い。この選択のために、例えば係数データ読出し部58cが、高周波成分検出部98による判定の結果を示す信号SLに基づいて選択のための信号を生成することとしても良い。
 実施の形態1と同様に、高解像度パッチ生成部54は、補間画像D52の各パッチLPcについて、係数データ読出し部58cによって読み出された係数データD58cを用いて、高解像度パッチHPcを生成する。
 パッチ平均化部55は、実施の形態1で説明したのと同様に、高解像度画像D54の各画素についての複数の高解像度パッチHPcの画素値を平均化することで出力画像Doutの画素値Dout(x,y)を算出する。
 上記の係数データ記憶部57cに記憶される係数データの生成には、図18に示したのと同様の装置を用い得る。但し、パターン判別部105として、図12のパターン判別部56と同様のものの代わりに、図30のパターン判別部56cと同様のものを用いる必要がある。
 以上のように、実施の形態3では、係数データ記憶部には、2値パターンコードに対応する係数データと、局所領域内に高周波成分が含まれない場合に生成される3値パターンコードに対応する係数データを記憶しておき、局所領域内に高周波成分が含まれる場合には、2値パターンコードを選択コードD56cとして用い、局所領域内に高周波成分が含まれない場合には、3値パターンコードを選択コードD56cとして用いて、係数データを選択する。これにより、実施の形態2の場合に比べて、係数データ記憶部の容量を抑制しつつ、画質の劣化を抑えた拡大画像の生成を可能にしている。
 また、高周波成分検出部98が、局所領域内において、行方向又は列方向に整列した画素から成る群のいずれかにおいて、中央の画素の画素値が極大又は極小となるときは、高周波成分が含まれていると判定することとし、画素値が極大又は極小になるか否かの判定を3値の比較コードを用いて行うので、高周波成分が含まれているか否かの判定を小さい回路規模で実現することができる。
 以上本発明を画像拡大装置として説明したが、画像拡大装置で実施される画像拡大方法もまた本発明の一部を成す。上記の画像拡大装置を構成する要素の一部又は全部、或いは上記の画像拡大方法における処理の一部又は全部は、ソフトウェアにより、即ちプログラムされたコンピュータによって実現することができる。従って、上記の画像拡大装置の要素の一部又は全部、或いは上記の画像拡大方法における処理の一部又は全部をコンピュータに実行させるためのプログラム、及び該プログラムを記録したコンピュータで読み取り可能な記録媒体もまた本発明の一部を成す。
 以上で説明したように、本発明によれば、回路規模、メモリ容量を削減しつつ、ノイズへの耐性を向上させて、ハードウェア化に適した高品質な高解像度化を行うことができる。
 52 線形補間部、 54 高解像度パッチ生成部、 55 パッチ平均化部、 56 パターン判別部、 57、57b、57c 係数データ記憶部、 58、58b、58c 係数データ読出し部、 62 特徴成分分離部、 64 高解像度化変換部、 66 特徴成分合成部、 71 局所領域抽出部、 72 領域内平均算出部、 73、83、93 比較コード生成部、 73c 2値比較コード生成部、 74、84、94 選択コード生成部、 75 2値パターンコード生成部、 83c 3値比較コード生成部、 85 3値パターンコード生成部、 95 3値パターンコード生成部、 96 コード連結部、 97 コード変換部、 98 高周波成分検出部、 99 コード選択部、 101 画像縮小部、 102 線形補間部、 103 特徴成分分離部、 105 パターン判別部、 104 特徴成分分離部、 106 分類部、 107 演算部、 108 係数データ抽出部、 S11 線形補間、 S12 パッチ抽出、 S14 パターン判別、 S15 係数データ読出し、 S16 高解像度化変換、 S17 合成、 S18 判定、 S19 パッチ平均化、 S21 局所領域抽出、 S22 領域内平均算出、 S23 2値比較コード生成、 S24 2値パターンコード生成、 S33 3値比較コード生成、 S34 3値パターンコード生成。

Claims (20)

  1.  入力画像を線形補間により拡大して補間画像を生成する線形補間部と、
     それぞれ前記補間画像の一部を成す複数のパッチの各々について、高解像度化を行って高解像度パッチを生成する高解像度パッチ生成部と、
     前記入力画像のうちの前記補間画像の各パッチに対応する局所領域のパターンを判別し選択コードを出力するパターン判別部と、
     前記選択コードの取り得る複数の値にそれぞれ対応する複数個の係数データを記憶する係数データ記憶部と、
     前記係数データ記憶部に記憶されている複数個の係数データから前記選択コードに対応する係数データを読み出す係数データ読出し部とを有し、
     前記高解像度パッチ生成部は、前記係数データ記憶部から読み出された係数データを用いて、前記高解像度パッチの生成を行い、
     前記パターン判別部は、前記局所領域内の画素の画素値の平均値、又は該局所領域の中心に位置する画素の画素値を基準値とし、前記中心に位置する画素以外の複数の周辺画素の画素値と、前記基準値との比較を行い、該比較の結果を示す比較コードを生成する比較コード生成部と、
     前記局所領域内の前記複数の周辺画素について生成された前記比較コードに基づいて前記選択コードを生成する選択コード生成部と
     を有することを特徴とする画像拡大装置。
  2.  前記比較コード生成部は、前記比較の結果を示す2値の比較コードを生成することを特徴とする請求項1に記載の画像拡大装置。
  3.  前記比較コード生成部は、前記比較の結果を示す3値の比較コードを生成することを特徴とする請求項1に記載の画像拡大装置。
  4.  前記比較コード生成部は、前記比較の結果を示す2値及び3値の比較コードを生成することを特徴とする請求項1に記載の画像拡大装置。
  5.  前記選択コード生成部は、前記局所領域内の前記複数の周辺画素について生成された前記2値の比較コードを連結することで前記選択コードを生成することを特徴とする請求項2又は4に記載の画像拡大装置。
  6.  前記比較コード生成部は、前記局所領域内の前記周辺画素の各々について、当該画素の画素値が、前記基準値以上か否かの判定、又は前記画素値が前記基準値以下か否かの判定を行って、該判定の結果に応じて前記2値の比較コードを生成することを特徴とする請求項5に記載の画像拡大装置。
  7.  前記選択コード生成部は、前記局所領域内の前記複数の周辺画素について生成された前記3値の比較コードを連結することで前記選択コードを生成することを特徴とする請求項3又は4に記載の画像拡大装置。
  8.  前記比較コード生成部は、前記局所領域内の前記周辺画素の各々について、当該画素の画素値が、前記基準値よりも大きくて且つその差の絶対値が予め定められた閾値以上か、前記画素値が前記基準値よりも小さくて且つその差の絶対値が前記閾値以上か、或いは、前記画素値と前記基準値との差の絶対値が前記閾値未満かの判定を行って、該判定結果に応じて前記3値の比較コードを生成することを特徴とする請求項7に記載の画像拡大装置。
  9.  前記選択コード生成部は、前記局所領域内の前記複数の周辺画素について生成された前記2値の比較コード及び前記第3値の比較コードに基づいて、前記選択コードを生成する
    ことを特徴とする請求項4に記載の画像拡大装置。
  10.  前記選択コード生成部は、前記局所領域内の前記複数の周辺画素について生成された前記2値の比較コードに基づいて2値パターンコードを生成する2値パターンコード生成部と、
     前記局所領域内の前記複数の周辺画素について生成された前記3値の比較コードに基づいて3値パターンコードを生成する3値パターンコード生成部と、
     前記局所領域内の前記複数の周辺画素について生成された前記3値の比較コードに基づいて、当該局所領域内に高周波成分が含まれているか否かの判定を行う高周波成分検出部と、
     前記高周波成分検出部により、高周波成分が含まれていると判定されたときは、前記2値パターンコードを選択し、それ以外のときは、前記第3値パターンコードを選択して、前記選択コードとして出力するコード選択部とを有する
     ことを特徴とする請求項9に記載の画像拡大装置。
  11.  前記3値パターンコード生成部は、前記局所領域内の前記局所領域内の前記複数の周辺画素について生成された前記3値の比較コードを連結することで、連結コードを生成するコード連結部と、
     前記コード連結部で生成された連結コードを、取り得る値の範囲がより狭いコードに変換し、変換後のコードを前記3値パターンコードとして出力するコード変換部とを有する
     ことを特徴とする請求項10に記載の画像拡大装置。
  12.  前記コード変換部から出力される変換後のコードが取り得る値の数は、前記高周波成分が含まれないときに生成される前記連結コードが取り得る値の数と同じであり、すべての変換後のコードが取り得る値を昇順又は降順に並べたときに、隣接する値相互間の差が1であることを特徴とする請求項11に記載の画像拡大装置。
  13.  前記高周波成分検出部は、前記局所領域内の中心に位置する画素については、当該画素の画素値と前記基準値との差の絶対値が前記閾値未満である場合の前記3値の比較コードが生成されているものとして扱い、
     前記局所領域内において、それぞれ行方向又は列方向に整列した複数の画素から成る複数の群の各々に属する複数の画素の画素値を、それぞれの画素についての前記3値の比較コードを用いて比較し、
     前記複数の群のいずれかにおいて、当該群に属する複数の画素のうち、中央に位置する画素の画素値が極大値又は極小値を取るとき、当該局所領域には、高周波成分が含まれていると判定することを特徴とする請求項10、11又は12に記載の画像拡大装置。
  14.  前記比較コード生成部は、前記局所領域内の前記周辺画素の各々について、当該画素の画素値が前記基準値よりも小さくて且つその差の絶対値が前記閾値以上のときは、当該画素についての前記3値の比較コードを第1の値とし、当該画素の画素値と前記基準値との差の絶対値が前記閾値未満のときは、当該画素についての前記3値の比較コードを第2の値とし、当該画素の画素値が前記基準値よりも大きくて且つその差の絶対値が前記閾値以上のときは、当該画素についての前記3値の比較コードを第3の値とし、前記第1の値、前記第2の値、及び前記第3の値は、前記第1の値よりも前記第2の値が大きく、且つ前記第2の値よりも前記第3の値が大きいという条件、又は前記第1の値よりも前記第2の値が小さく、且つ前記第2の値よりも前記第3の値が小さいという条件のいずれかを満たし、前記高周波成分検出部は、前記局所領域内の中心に位置する画素については、当該画素についての前記3値の比較コードが前記第2の値を有するものとして扱い、
     前記局所領域内において、前記複数の群の各々に属する複数の画素についての前記3値の比較コードを比較し、前記複数の群のいずれかにおいて、当該群に属する複数の画素のうち、中央に位置する画素についての前記3値の比較コードが極大値又は極小値を取るとき、当該局所領域には、高周波成分が含まれていると判定する
     ことを特徴とする請求項13に記載の画像拡大装置。
  15.  前記高解像度パッチ生成部は、前記補間画像の前記複数のパッチの各々の画素値から、低解像度の特徴成分と非特徴成分に分離する特徴成分分離部と、
     前記低解像度の特徴成分を高解像度の特徴成分に変換する高解像度化変換部と、
    前記高解像度の特徴成分と前記非特徴成分を合成して前記高解像度パッチを生成する特徴成分合成部とを有し、
     前記高解像度化変換部は、前記係数データ読出し部で選択された前記係数データを用いて、前記低解像度の特徴成分を前記高解像度の特徴成分に変換する
     ことを特徴とする請求項1から14のいずれか一項に記載の画像拡大装置。
  16.  高解像度画像の各画素について前記高解像度パッチ生成部で生成された1つ以上の前記高解像度パッチの各々の生成において求められた当該画素の画素値を平均化することで出力画像における当該画素の画素値を生成するパッチ平均化部をさらに有することを特徴とする請求項1から15のいずれか一項に記載の画像拡大装置。
  17.  監視を行う対象領域を撮影して画像を得る撮影部と、
     前記撮影部により得られた画像に対し、拡大処理を行って拡大画像を出力する画像拡大装置とを有し、
     前記画像拡大装置が請求項1から16のいずれか一項に記載されたものであることを特徴とする監視カメラ。
  18.  入力画像を線形補間により拡大して補間画像を生成する線形補間ステップと、
     それぞれ前記補間画像の一部を成す複数のパッチの各々について、高解像度化を行って高解像度パッチを生成する高解像度パッチ生成ステップと、
     前記入力画像のうちの前記補間画像の各パッチに対応する局所領域のパターンを判別し選択コードを出力するパターン判別ステップと、
     前記選択コードの取り得る複数の値にそれぞれ対応する複数個の係数データを記憶する係数データ記憶部に記憶されている複数個の係数データから前記選択コードに対応する係数データを読み出す係数データ読出しステップとを有し、
     前記高解像度パッチ生成ステップは、前記係数データ記憶部から読み出された係数データを用いて、前記高解像度パッチの生成を行い、
     前記パターン判別ステップは、前記局所領域内の画素の画素値の平均値、又は該局所領域の中心に位置する画素の画素値を基準値とし、前記中心に位置する画素以外の複数の周辺画素の画素値と、前記基準値との比較を行い、該比較の結果を示す比較コードを生成する比較コード生成ステップと、
     前記局所領域内の前記複数の周辺画素について生成された前記比較コードに基づいて前記選択コードを生成する選択コード生成ステップとを有する
     ことを特徴とする画像拡大方法。
  19.  請求項18の画像拡大方法を各ステップの処理をコンピュータに実行させるためのプログラム。
  20.  請求項19のプログラムを記録したコンピュータで読み取り可能な記録媒体。
PCT/JP2014/067912 2014-07-04 2014-07-04 画像拡大装置、画像拡大方法、及び監視カメラ、並びにプログラム及び記録媒体 WO2016002068A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
PCT/JP2014/067912 WO2016002068A1 (ja) 2014-07-04 2014-07-04 画像拡大装置、画像拡大方法、及び監視カメラ、並びにプログラム及び記録媒体
EP14896387.9A EP3166309B1 (en) 2014-07-04 2014-11-26 Image expansion device, image expansion method, surveillance camera, program, and recording medium
JP2015556308A JP6207634B2 (ja) 2014-07-04 2014-11-26 画像拡大装置、画像拡大方法、及び監視カメラ、並びにプログラム及び記録媒体
PCT/JP2014/081210 WO2016002099A1 (ja) 2014-07-04 2014-11-26 画像拡大装置、画像拡大方法、及び監視カメラ、並びにプログラム及び記録媒体
US15/323,684 US9779477B2 (en) 2014-07-04 2014-11-26 Image enlarging apparatus, image enlarging method, surveillance camera, program and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2014/067912 WO2016002068A1 (ja) 2014-07-04 2014-07-04 画像拡大装置、画像拡大方法、及び監視カメラ、並びにプログラム及び記録媒体

Publications (1)

Publication Number Publication Date
WO2016002068A1 true WO2016002068A1 (ja) 2016-01-07

Family

ID=55018665

Family Applications (2)

Application Number Title Priority Date Filing Date
PCT/JP2014/067912 WO2016002068A1 (ja) 2014-07-04 2014-07-04 画像拡大装置、画像拡大方法、及び監視カメラ、並びにプログラム及び記録媒体
PCT/JP2014/081210 WO2016002099A1 (ja) 2014-07-04 2014-11-26 画像拡大装置、画像拡大方法、及び監視カメラ、並びにプログラム及び記録媒体

Family Applications After (1)

Application Number Title Priority Date Filing Date
PCT/JP2014/081210 WO2016002099A1 (ja) 2014-07-04 2014-11-26 画像拡大装置、画像拡大方法、及び監視カメラ、並びにプログラム及び記録媒体

Country Status (4)

Country Link
US (1) US9779477B2 (ja)
EP (1) EP3166309B1 (ja)
JP (1) JP6207634B2 (ja)
WO (2) WO2016002068A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022195819A1 (ja) * 2021-03-18 2022-09-22 日本電気株式会社 特徴量変換学習装置、認証装置、特徴量変換学習方法、認証方法および記録媒体

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9875523B2 (en) * 2013-12-03 2018-01-23 Mitsubishi Electric Corporation Image processing apparatus and image processing method
US10410398B2 (en) * 2015-02-20 2019-09-10 Qualcomm Incorporated Systems and methods for reducing memory bandwidth using low quality tiles
GB201604345D0 (en) * 2016-03-14 2016-04-27 Magic Pony Technology Ltd Super resolution using fidelity transfer
KR102580519B1 (ko) * 2016-09-07 2023-09-21 삼성전자주식회사 영상처리장치 및 기록매체
WO2018126396A1 (en) * 2017-01-05 2018-07-12 General Electric Company Deep learning based estimation of data for use in tomographic reconstruction
CN111015676B (zh) * 2019-12-16 2023-04-28 中国科学院深圳先进技术研究院 基于无手眼标定的抓取学习控制方法、系统、机器人及介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007280284A (ja) * 2006-04-11 2007-10-25 Toshiba Corp 画像の高解像度化方法及び装置
JP2013021635A (ja) * 2011-07-14 2013-01-31 Sony Corp 画像処理装置、画像処理方法、プログラム、及び記録媒体

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6766067B2 (en) * 2001-04-20 2004-07-20 Mitsubishi Electric Research Laboratories, Inc. One-pass super-resolution images
WO2004068862A1 (ja) 2003-01-31 2004-08-12 The Circle For The Promotion Of Science And Engineering 高解像度カラー画像生成方法,高解像度カラー画像生成装置及び高解像度カラー画像生成プログラム
US7595819B2 (en) * 2003-07-31 2009-09-29 Sony Corporation Signal processing device and signal processing method, program, and recording medium
US8422767B2 (en) * 2007-04-23 2013-04-16 Gabor Ligeti Method and apparatus for transforming signal data
US8311344B2 (en) * 2008-02-15 2012-11-13 Digitalsmiths, Inc. Systems and methods for semantically classifying shots in video
EP2187647A1 (en) * 2008-11-12 2010-05-19 Sony Corporation Method and device for approximating a DC coefficient of a block of pixels of a frame
JPWO2013089260A1 (ja) 2011-12-12 2015-04-27 日本電気株式会社 画像処理システム及び画像処理方法
JP5892592B2 (ja) 2011-12-19 2016-03-23 国立大学法人 筑波大学 超解像画像処理装置及び超解像画像処理用コードブック作成装置
US9875523B2 (en) * 2013-12-03 2018-01-23 Mitsubishi Electric Corporation Image processing apparatus and image processing method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007280284A (ja) * 2006-04-11 2007-10-25 Toshiba Corp 画像の高解像度化方法及び装置
JP2013021635A (ja) * 2011-07-14 2013-01-31 Sony Corp 画像処理装置、画像処理方法、プログラム、及び記録媒体

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022195819A1 (ja) * 2021-03-18 2022-09-22 日本電気株式会社 特徴量変換学習装置、認証装置、特徴量変換学習方法、認証方法および記録媒体

Also Published As

Publication number Publication date
US20170140506A1 (en) 2017-05-18
EP3166309A1 (en) 2017-05-10
EP3166309B1 (en) 2020-10-28
JP6207634B2 (ja) 2017-10-04
WO2016002099A1 (ja) 2016-01-07
EP3166309A4 (en) 2018-03-21
US9779477B2 (en) 2017-10-03
JPWO2016002099A1 (ja) 2017-04-27

Similar Documents

Publication Publication Date Title
WO2016002068A1 (ja) 画像拡大装置、画像拡大方法、及び監視カメラ、並びにプログラム及び記録媒体
US5406334A (en) Apparatus and method for producing a zoomed image signal
WO2015083396A1 (ja) 画像処理装置及び画像処理方法
KR101198320B1 (ko) 2차원에서 3차원으로의 영상 변환 방법 및 장치
CN109427047B (zh) 一种图像处理方法及装置
JPH0750752A (ja) 画像密度変換方法及び装置
JP4517300B2 (ja) 表示装置および表示方法、学習装置および学習方法、並びにプログラム
US7532773B2 (en) Directional interpolation method and device for increasing resolution of an image
CN112258592A (zh) 一种人脸可见光图的生成方法及相关装置
JP3849817B2 (ja) 画像処理装置および画像処理方法
JP2702408B2 (ja) 画像変換システム
JP2009157449A (ja) 画像処理システム、画像処理方法および画像処理用プログラム
JP5701467B1 (ja) 画像処理装置及び画像処理方法
JPH1127564A (ja) 画像変換装置および方法、並びに提供媒体
JP4143880B2 (ja) 画像符号化装置および方法、画像復号装置および方法、並びに記録媒体
JP2626108B2 (ja) パターン認識方法および装置
JP4892729B2 (ja) テクスチャ画像への情報埋め込み方法および情報読み込み方法ならびにテクスチャ画像への情報埋め込み装置および情報読み込み装置
JP2014110507A (ja) 画像処理装置および画像処理方法
JP2020013225A (ja) 高画質化学習装置および高画質化装置
JP3608228B2 (ja) ディジタル画像信号の変換装置
JP4971880B2 (ja) 画像符号化装置及び画像復号装置、並びにそれらの制御方法
US20060206292A1 (en) Method and apparatus to utilize the probability vectors in the binary representation of video systems for faster convergence with minimal computation requirements
JP2002024817A (ja) 画像処理方法及び画像処理装置
JP4650958B2 (ja) 画像処理装置、方法およびプログラム
JP4099554B2 (ja) 画像情報変換装置および画像情報変換方法

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: 14896630

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

NENP Non-entry into the national phase

Ref country code: JP

122 Ep: pct application non-entry in european phase

Ref document number: 14896630

Country of ref document: EP

Kind code of ref document: A1