WO2005041124A1 - 画像処理方法および画像処理装置、並びにプログラム - Google Patents

画像処理方法および画像処理装置、並びにプログラム Download PDF

Info

Publication number
WO2005041124A1
WO2005041124A1 PCT/JP2004/016116 JP2004016116W WO2005041124A1 WO 2005041124 A1 WO2005041124 A1 WO 2005041124A1 JP 2004016116 W JP2004016116 W JP 2004016116W WO 2005041124 A1 WO2005041124 A1 WO 2005041124A1
Authority
WO
WIPO (PCT)
Prior art keywords
area
image
conversion
tile
processing
Prior art date
Application number
PCT/JP2004/016116
Other languages
English (en)
French (fr)
Inventor
Hisashi Sano
Original Assignee
Nikon Corporation
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 Nikon Corporation filed Critical Nikon Corporation
Priority to US10/577,014 priority Critical patent/US8385686B2/en
Publication of WO2005041124A1 publication Critical patent/WO2005041124A1/ja

Links

Classifications

    • G06T3/18
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/387Composing, repositioning or otherwise geometrically modifying originals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects

Definitions

  • Image processing method image processing apparatus, and program
  • the present invention relates to an image that divides one image into a plurality of regions and, when projective transformation is performed for each image data of each region, sets the region in a suitable range.
  • the present invention relates to a processing method, an image processing device, and a program.
  • barrel-shaped distortion in which the subject appears to bulge outward and pincushion-type distortion in which the subject appears to dent inward may be conspicuous.
  • Patent Document 1 As a technique for performing geometric transformation on an image, there is a technique disclosed in Patent Document 1.
  • Patent Document 1 JP 2001-250114 A
  • the problem is that the number of pixels of the image sensor increases, and the image data becomes redundant as the data amount of one image increases.
  • the present invention has been made in view of such a situation, and it is desirable to divide one image into a plurality of regions and perform conversion for each region so as to shorten the processing time and to reduce the processing time.
  • An area can be set in a range.
  • the image processing method of the present invention provides an area setting step of setting a first area by dividing a converted image of a captured image by a line passing through an origin and parallel to a horizontal axis and a vertical axis.
  • the first area is set so as not to include the vertical axis.
  • the first area that includes at least one of the horizontal axis and the vertical axis when set at the default size is changed to one that does not include the horizontal axis and the vertical axis. It can be further divided as follows.
  • the processing of the area setting step when there is a first area that includes at least one of the horizontal axis and the vertical axis when the area is set with the default size, The size of all the first areas may be changed so that the horizontal axis and the vertical axis are not included.
  • the image processing apparatus of the present invention provides an area setting unit that divides a converted image of a captured image by a line passing through the origin and parallel to a horizontal axis and a vertical axis, and setting a first area; Setting Conversion means for projectively converting the second area before image conversion corresponding to the first area set by the setting means to the first area, wherein the area setting means includes a horizontal axis and a vertical axis. It is characterized in that the first area is set so as not to exist.
  • a program according to the present invention includes an area setting step of setting a first area by dividing a converted image of a captured image by lines parallel to a horizontal axis and a vertical axis passing through the origin.
  • the first region is set so as not to include the horizontal axis and the vertical axis.
  • the converted image of the captured image is divided by a line passing through the origin and parallel to the horizontal axis and the vertical axis, and the first area Is set. Further, the second area before image conversion corresponding to the set first area is projectively transformed into the first area. Further, the first area is set so as to include the horizontal axis and the vertical axis.
  • an image with reduced distortion can be obtained in a shorter time.
  • data of an image to be processed can be reliably read from a storage unit that stores data of the entire image.
  • FIG. 1 is a block diagram illustrating a configuration example of a personal computer to which the present invention has been applied.
  • FIG. 2 is a diagram showing an example of an image before conversion and an image after conversion.
  • FIG. 3 is a block diagram illustrating a functional configuration example of an image conversion unit.
  • FIG. 4 is a diagram showing an example of a tile area and an image before conversion.
  • FIG. 5 is an enlarged view of a certain region in FIG. 4.
  • FIG. 6 is a diagram showing another example of a tile area and an image before conversion.
  • FIG. 7 is an enlarged view showing a certain region in FIG. 6.
  • FIG. 8 is a diagram showing a specific example of a tile size.
  • FIG. 9 is a diagram showing an example in which the tile size in FIG. 8 is changed.
  • FIG. 10 is a diagram showing pixel interpolation.
  • FIG. 11 is another diagram showing interpolation of pixels.
  • FIG. 12 is a flowchart illustrating an image conversion process of an image conversion unit.
  • FIG. 13 is a diagram showing an example in which a tile size is changed.
  • FIG. 14 is a flowchart illustrating another image conversion process of the image conversion unit. Explanation of symbols
  • FIG. 1 is a block diagram showing a configuration example of a personal computer 1 to which the present invention is applied.
  • a CPU Central Processing Unit ll executes various processes according to a program stored in a ROM (Read Only Memory) 12 or a program loaded from a storage unit 18 into a RAM (Random Access Memory) 13. I do.
  • the storage unit 18 stores, for example, an image processing program for performing various processes on an image captured by a digital camera.
  • the RAM 13 also appropriately stores data necessary for the CPU 11 to execute various processes.
  • the CPU 11, the ROM 12, and the RAM 13 are mutually connected via a bus 14.
  • the bus 14 is also connected to an input / output interface 15.
  • the input / output interface 15 includes an input unit 16 including a keyboard, a mouse, and the like.
  • a display such as a CRT (Cathode Ray Tube) or LCD (Liquid Crystal Display), an output unit 17 such as a speaker, a storage unit 18 such as an HDD (Hard Disk Drive), and communication via a network.
  • Communication unit 19 is connected.
  • a drive 20 is connected to the input / output interface 15 as needed, and a removable medium 21 made of a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, or the like is appropriately mounted.
  • the personal computer 1 having such a configuration, for example, digital An image captured by the camera is input, and conversion processing for correcting barrel distortion and pincushion distortion included in the image is performed.
  • FIG. 2 shows an image in which a rectangular object is photographed in a barrel shape when the object is photographed (an image in which barrel distortion occurs), and a converted image obtained by converting the image.
  • FIG. 3 is a diagram illustrating an example of an image.
  • the image data before the conversion is attached to, for example, a digital camera (not shown), and a removable medium 21 for storing the taken image is attached to the drive 20 so that the personal computer 1 (storage) Part 18).
  • FIG. 3 is a block diagram showing an example of a functional configuration of the image conversion unit 31 realized by executing the image processing program by the CPU 11 of FIG.
  • the image conversion unit 31 divides the converted image of the captured image into a plurality of areas (hereinafter, appropriately referred to as tile areas) arranged in a tile shape. Conversion processing and the like are sequentially performed on each of them.
  • the tile size determination unit 41 determines whether the size of the instructed image is specified by the user operates the input unit 16 to specify a predetermined image stored in the storage unit 18 and instructs to perform a conversion process for correcting the distortion.
  • the tile size determination unit 41 also has information on the capacity of the buffer (RAMI 3) used for performing the conversion processing, and based on information on the size and data amount of the image, information on the capacity of the buffer, and the like. Then, determine the tile size (the size of the tile area).
  • the tile size determination unit 41 determines a tile size, selects one tile area to be processed, and outputs information indicating the position of the tile area to be processed to the image area calculation unit 42 I do.
  • the tile size determination unit 41 determines that the tile area to be processed includes a horizontal axis and a vertical axis passing through the origin of the image after conversion (hereinafter collectively referred to as a central axis as appropriate). If , Change its tile size so that it does not include the central axis.
  • the image area calculation unit 42 calculates an area on the image before conversion corresponding to the tile area to be processed. Further, the image area calculation unit 42 calculates a rectangular or square (rectangular) area including the calculated area on the image before conversion, and outputs information indicating the calculated position of the area to the image data reading Z writing unit 43. Output.
  • the image data readout Z writing unit 43 reads out the pixel data included in the area calculated by the image area calculation unit 42 from the storage unit 18, and reads the read data from the pre-conversion data formed in the buffer 44.
  • the data is stored in the buffer 51.
  • the conversion processing unit 45 refers to the pre-conversion data stored in the pre-conversion data buffer 51, performs projective conversion on each pixel, and interpolates the pixels as necessary.
  • the converted data is stored in the converted data buffer 52 formed in the buffer 44.
  • each unit is performed for each tile area. For example, when one entire image with reduced distortion is stored in the converted data buffer 52, the converted data is output from the image conversion unit 31. Is done. The data output from the image conversion unit 31 is stored again in the storage unit 18 or used to display the converted image on a display.
  • FIG. 4 is a diagram showing an example of an image after conversion (tile area) and an image before conversion.
  • FIG. 4 shows only the horizontal distortion (the same applies to FIG. 6).
  • the converted image is divided by a line parallel to the horizontal X-axis and the vertical Y-axis passing through the origin, and the processing target at that time is divided. If the tile area is an upper left area indicated by oblique lines, the image conversion unit 31 calculates a corresponding point ABCD on the image before conversion from the positions of the four vertices abed.
  • a lens mounted on a digital camera or the like is usually designed to substantially satisfy the relationship of the following expression (1).
  • [Equation 1] y f-tan 0 ⁇ ⁇ ⁇ (1)
  • Equation (1) “y” represents the image height, “f” represents the focal length, and “ ⁇ ” represents the half angle of view.
  • the straight line portion of the object is formed as a straight line on the imaging surface.
  • some types of lenses are not designed to satisfy the relationship of equation (1), and especially when viewing images taken with a wide-angle lens with a short focal length, the results are shown on the left side of Fig. 2. Thus, the straight part may appear to be clearly distorted.
  • the characteristic power is not designed with Equation (1) as a target.
  • the power differs depending on the projection method on the light receiving surface such as a stereoscopic projection method and an equidistant projection method. Designed as a premise.
  • Equation (2) “L0” represents the distance from the optical axis (center) of the image before conversion, and “L1” represents the distance from the optical axis of the image after conversion. “Y (0)” represents the characteristics of the zenith angle and the image height of the lens, and “A” is a constant that defines the shooting range.
  • the position of the pixel after the conversion corresponding to the position of the pixel before the conversion can be calculated by the conversion using Expression (2).
  • Equation (2) it is possible to calculate the position of the pixel before the conversion corresponding to the position of the pixel after the conversion.
  • the image area calculation unit 42 in FIG. 3 calculates the four vertices a to d of the tile area to be processed. For (Fig. 4), the corresponding positions on the image before conversion are calculated from Equation (2), and the area consisting of points A to D on the image before conversion corresponding to the tile area to be processed is calculated. Determine the area.
  • the image area calculation unit 42 calculates, for example, a rectangular area having a point EBFD force as shown in FIG. 5, in order to read out pixel data used in the processing by the conversion processing unit 45.
  • FIG. 5 is an enlarged view of the vicinity of the point ABCD in FIG. 4, and the rectangular area including the point EBFD includes the area of the point ABCD.
  • the image area calculation unit 42 calculates the area of the pixel that also has the point EBFD force, and reads the data of the pixels included in the calculated area (the data of the pixels in the rectangle that also has the point EBFD force) from the storage unit 18.
  • the tile area to be processed does not include the central axis.
  • the tile area to be processed at that time is the central axis (see FIG. In the case of (6), the tile size determination unit 41 changes the tile size so that the tile area to be processed does not include the central axis.
  • a tile region having the point a ′ b ′ c ′ d ′ as a vertex is a region to be processed, and a region on the image before conversion corresponding to the region is calculated from the inverse transformation of the equation (2).
  • a region having a point A′B′C′D ′ force having a curve whose left side swells slightly outward is calculated.
  • FIG. 7 is an enlarged view of the area consisting of points A ′ B ′ C ′ D ′ in FIG. 6.
  • the points A ′ B ′ C If the vertex of a square consisting of 'D' is specified, only the shaded area in Fig. 7 is specified. That is, the left side Region # 1 surrounded by the line is not specified, and the data of the pixels included in region # 1 cannot be read. Projection transformation, interpolation processing, etc. are performed based on the read data, so if the area of the pixel from which data is to be read is specified in this way, data to be subjected to projection transformation and interpolation processing will not be read. Will be.
  • the tile size determination unit 41 determines the processing target pixel data so that the data of the pixel to be subjected to the projection conversion and the interpolation processing can be reliably read. Change the tile size so that the tile area does not include the central axis!
  • FIG. 8 is a diagram showing a specific example of the tile size.
  • the entire tile area (the entire image after conversion) is 400 ⁇ 300.
  • the tile size of each tile is 100 x 60, the area at the top of the second column from the left is tile area # 1, the area below it is tile area # 2, and the area below it is tile area # 3. Has been done.
  • the tile size determination unit 41 determines that the tile area # 3 does not include the X-axis as shown in FIG. , Change the tile size to 100 x 30 and divide tile area # 3 into two tile areas # 3-1, # 3-2.
  • the tile size to be processed includes the central axis
  • the tile size is changed to exclude the central axis, so that the data of the pixel to be processed is stored in the storage unit 18. Reading can be performed reliably.
  • the area is calculated as described above, and the conversion processing unit 45 performs processing based on the read pixel data.
  • pixel interpolation is performed by the conversion processing unit 45 as necessary.
  • FIG. 10 and FIG. 11 are diagrams showing pixel interpolation.
  • the position is specified as, for example, (100.4, 52.7), and interpolation is performed using the pixel values of the pixels in the vicinity of the specified position.
  • the pixel value of pixel # 1 at position (100, 52) and the pixel value of pixel # 2 at position (100, 53) are referred to, and the pixel of interest is interpolated.
  • the value of the decimal point of (100.4, 52.7) is relatively determined. For example, it may be determined by linear interpolation.
  • Such projective transformation and interpolation processing are performed on each pixel included in the tile area to be processed.
  • the tile area to be processed is switched, and the processing is repeated until the processing of one entire image is completed.
  • step S1 the tile size determination unit 41 sets a default tile size, proceeds to step S2, and selects a tile area to be processed. For example, as shown in FIG. 8, a tile area of 100 ⁇ 60 size is set, and a tile area to be processed is set from the upper left area.
  • step S3 the tile size determination unit 41 determines whether or not the selected processing target tile area includes the central axis. Proceed to 4 to change the size of the tile area to be processed as described with reference to FIG.
  • the information (size, position) of the tile area selected by the tile size determination unit 41 is output to the image area calculation unit 42.
  • step S5 the image area calculation unit 42 calculates the corresponding area on the image before conversion from the position of the tile area to be processed. For example, as described with reference to FIGS. 4 to 7, an area that does not include a curve is calculated as an area that includes a reference pixel.
  • the information of the area calculated by the image area calculation unit 42 is output to the image data readout Z writing unit 43.
  • the image data read-out Z writing unit 43 secures a memory (the converted data buffer 52) for storing the converted data in step S6, and proceeds to step S7, where the data before conversion, that is, the image area calculation is performed.
  • a memory (data buffer before conversion 51) for storing the data of the pixels included in the area calculated by the unit 42 is secured.
  • step S8 the image data readout Z writing unit 43 reads out the data of the pixels included in the area calculated by the image area calculation unit 42 from the storage unit 18 and stores the data in the pre-conversion data buffer 51.
  • step S9 the conversion processing unit 45 performs projection conversion, interpolation processing, and the like on each pixel whose data is stored in the pre-conversion data buffer 51, and converts the converted data into the post-conversion data buffer 52. To memorize.
  • step S10 the conversion processing unit 45 determines whether or not all pixels read out as corresponding to the tile area to be processed have been subjected to projection conversion or the like, and if it has been determined not to have been performed. Then, the process returns to step S9, and the process for each pixel is repeated.
  • step S10 when it is determined in step S10 that all the pixels have been subjected to the projection transformation or the like, the process proceeds to step S11, and the conversion processing unit 45 next determines whether or not the processing has been performed for all the tile areas. Is determined. If the conversion processing unit 45 determines in step S11 that all tile areas have been processed, the process proceeds to step S12.
  • step S12 the tile size determination unit 41 changes the tile area to be processed, and repeats the processing from step S3.
  • step S11 all tile areas If it is determined that the processing has been performed on the image, the processing is terminated, and the data of one entire image whose distortion has been corrected is output from the image conversion unit 31.
  • the data output from the image conversion unit 31 is stored again in the storage unit 18 or used for displaying an image on a display.
  • one image is divided into a plurality of areas, and the processing is performed for each area. Therefore, even if the memory cannot be sufficiently secured, the processing can be easily performed.
  • the area to be processed is specified as an area not including a curve, data of pixels included in the area to be processed can be easily read.
  • the size is changed so as not to include the central axis, and the force data is read out. Data can be prevented from not being read
  • the tile size to be processed includes the center axis
  • the tile size is changed only for that area.
  • all tiles are processed. You may change the size of the area!
  • tile size is calculated from the following equations (3) and (4) A, XB, ⁇ are changed.
  • Nx X / A (Nx is an integer, fractions are truncated)
  • Ny Y / B (Ny is an integer, decimal part is truncated) ⁇ ⁇ ⁇ (3)
  • the tile size may be changed by any method as long as the center axis is not included in the tile area.
  • step S21 the tile size determination unit 41 sets a default tile size, and proceeds to step S22 to determine whether or not any tile area includes a central axis.
  • step S22 determines in step S22 that the central axis is included in the tile area of! /,,, Or, the process proceeds to step S23. Change the tile size from (4). As a result, as shown in FIG. 13, the tile size is changed so that the center axis is not included in any of the tile areas.
  • step S23 is skipped.
  • step S24 a tile area to be processed is selected by the image area calculation unit 42, and in step S25, a corresponding area on the image before conversion is calculated from the position of the tile area to be processed.
  • step S26 a post-conversion data buffer 52 for storing post-conversion data is secured, and the process proceeds to step S27, where a pre-conversion data buffer 51 for storing pre-conversion data is reserved.
  • step S28 pixel data included in the area calculated by the image area calculation unit 42 is read from the storage unit 18 by the image data read Z writing unit 43, and stored in the pre-conversion data buffer 51. .
  • step S29 each pixel stored in the pre-conversion data buffer 51 is subjected to projection conversion and interpolation processing by the conversion processing unit 45, and the converted data is stored in the post-conversion data buffer 52. You. If it is determined in step S30 that all the read pixels have been subjected to projective transformation or the like, and if it is determined in step S31 that processing has been performed on all tile areas, the processing proceeds. Is terminated.
  • the tile size is changed so as not to include the central axis.
  • a program constituting the software is executed by a computer incorporated in dedicated hardware or by installing various programs to realize various functions. For example, it is installed from a network or a recording medium on a general-purpose personal computer or the like that can execute the program.
  • this recording medium is a magnetic disk (including a flexible disk) on which the program is recorded, which is distributed separately from the apparatus main body to provide the user with the program, Removable media consisting of an optical disk (including CD-ROM (Compact Disk-Read Only Memory), DVD (Digital Versatile Disk)), magneto-optical disk (including MD (registered trademark) (Minto Disk)), or semiconductor memory It is composed of a ROM 12 and a hard disk included in the storage unit 18 that are provided to the user in a state where they are pre-installed in the main unit of the device. .
  • the step of describing a program recorded on a recording medium is not limited to processing performed in chronological order according to the described order, but is not necessarily performed in chronological order. , And also includes processing executed in parallel or individually.

Abstract

 本発明は、1つの画像を複数の領域に分割し、それぞれの領域毎に変換を行うことで処理時間の短縮を図るとともに、好適な範囲にタイル領域を設定することができるようにする画像処理方法および画像処理装置、並びにプログラムに関する。  変換後の画像が複数のタイル領域に分割され、それぞれのタイル領域を対象として順に変換処理等が施される。処理対象のタイル領域が変換後の画像の原点を通る中心軸を含む場合、中心軸を含まないものになるように、そのタイルサイズがタイルサイズ決定部41により変更される。処理対象のタイル領域に対応する、変換前の画像上の領域が画像領域算出部42により算出され、算出された領域に含まれる画素のデータが記憶部18から読み出される。本発明は、ディジタルカメラにより撮影された画像のデータを処理するパーソナルコンピュータなどに適用することができる。

Description

明 細 書
画像処理方法および画像処理装置、並びにプログラム
技術分野
[0001] 本発明は、 1つの画像を複数の領域に分割し、それぞれの領域の画像データ毎に 射影変換を施す場合において、好適な範囲に、その領域を設定することができるよう にする画像処理方法および画像処理装置、並びにプログラムに関する。
背景技術
[0002] ディジタルカメラなどで撮影を行った場合、被写体によっては、被写体が外方向に 膨らむように写る樽型歪みや、内方向に凹むように写る糸巻き型歪みが目立つことが ある。
[0003] そこで、そのような歪みを補正するために、パーソナルコンピュータに撮影画像のデ ータを取り込み、パーソナルコンピュータ上で幾何変換などの補正を施すことが行わ れている。
[0004] 画像に幾何変換を施す技術としては、特許文献 1に開示されているようなものがあ る。
特許文献 1:特開 2001—250114号公報
発明の開示
発明が解決しょうとする課題
[0005] ところで、パーソナルコンピュータ上で画像に幾何変換を施す方法としては、 1つの 画像全体を一括して変換する方法と、 1つの画像を複数の領域に分割し、それぞれ の領域毎に変換する方法とが考えられる。
[0006] 1つの画像全体を一括して変換する場合、当然、変換対象とする画像 (変換前の画 像)全体を記憶する分の RAM(Random Access Memory)の容量、すなわち、 1つの画 像を複数の領域に分割し、それぞれの領域毎に変換する場合に較べて大き!ヽ容量 が必要になる。従って、他の処理と並行して行う場合、十分な RAMの容量が確保でき ず、画像の変換に時間が力かってしまうという課題があった。 RAMの容量が十分に確 保できない場合、 RAMより転送速度の遅い HDD(Hard Disk Drive)などに仮想メモリ が形成され、そこで処理が行われることになる力 この場合、処理時間はさらに長くな る。
[0007] この課題は、撮像素子の高画素化が進み、 1つの画像のデータ量が多くなるに伴 い冗長されることにちなる。
[0008] 一方、 1つの画像を複数の領域に分割し、それぞれの領域毎に変換する場合、領 域の設定が問題となる。すなわち、撮影して得られた画像は歪みを含むものであるこ とから、その歪みを考慮して領域を設定しなければ、幾何変換後に必要となる画素の 補間などに参照するデータが、処理対象として設定した領域中に含まれていないよう なことが生じるおそれがある。
[0009] 本発明はこのような状況に鑑みてなされたものであり、 1つの画像を複数の領域に 分割し、それぞれの領域毎に変換を行うことで処理時間の短縮を図るとともに、好適 な範囲に領域を設定することができるようにするものである。
課題を解決するための手段
[0010] 本発明の画像処理方法は、撮影された画像の変換後の画像を、原点を通る水平軸 および垂直軸に平行な線で区切り、第 1の領域を設定する領域設定ステップと、領域 設定ステップの処理により設定された第 1の領域に対応する、画像の変換前の第 2の 領域を第 1の領域に射影変換する変換ステップとを含み、領域設定ステップの処理 により、水平軸および垂直軸を含まないものになるように第 1の領域が設定されること を特徴とする。
[0011] 領域設定ステップの処理により、デフォルトのサイズで設定した場合に水平軸およ び垂直軸の少なくともいずれかを含むことになる第 1の領域が、水平軸および垂直軸 を含まないものになるようにさらに分割されるようにすることができる。
[0012] 領域設定ステップの処理により、デフォルトのサイズで設定した場合に水平軸およ び垂直軸の少なくとも 、ずれかを含むことになる第 1の領域があるとき、 、ずれの領 域にも水平軸および垂直軸が含まれないものになるように全ての第 1の領域のサイズ 力 S変更されるようにすることができる。
[0013] 本発明の画像処理装置は、撮影された画像の変換後の画像を、原点を通る水平軸 および垂直軸に平行な線で区切り、第 1の領域を設定する領域設定手段と、領域設 定手段により設定された第 1の領域に対応する、画像の変換前の第 2の領域を第 1の 領域に射影変換する変換手段とを備え、領域設定手段は、水平軸および垂直軸を 含まないものになるように第 1の領域を設定することを特徴とする。
[0014] 本発明のプログラムは、撮影された画像の変換後の画像を、原点を通る水平軸お よび垂直軸に平行な線で区切り、第 1の領域を設定する領域設定ステップと、領域設 定ステップの処理により設定された第 1の領域に対応する、画像の変換前の第 2の領 域を第 1の領域に射影変換する変換ステップとを含み、領域設定ステップの処理によ り、水平軸および垂直軸を含まないものになるように第 1の領域が設定されることを特 徴とする。
[0015] 本発明の画像処理方法および画像処理装置、並びにプログラムにおいては、撮影 された画像の変換後の画像が、原点を通る水平軸および垂直軸に平行な線で区切 られ、第 1の領域が設定される。また、設定された第 1の領域に対応する、画像の変 換前の第 2の領域を第 1の領域に射影変換される。さらに、水平軸および垂直軸を含 まな 、ものになるように第 1の領域が設定される。
発明の効果
[0016] 本発明によれば、より短時間で歪みが低減された画像を得ることができる。
[0017] また、本発明によれば、領域毎に変換を行う場合でも、画像全体のデータを記憶す る記憶部から、処理対象とする画像のデータを確実に読み出すことができる。
図面の簡単な説明
[0018] [図 1]本発明を適用したパーソナルコンピュータの構成例を示すブロック図である。
[図 2]変換前の画像と、変換後の画像の例を示す図である。
[図 3]画像変換部の機能構成例を示すブロック図である。
[図 4]タイル領域と、変換前の画像の例を示す図である。
[図 5]図 4のある領域を拡大して示す図である。
[図 6]タイル領域と、変換前の画像の他の例を示す図である。
[図 7]図 6のある領域を拡大して示す図である。
[図 8]タイルサイズの具体的な例について示す図である。
[図 9]図 8のタイルサイズを変更した例を示す図である。 [図 10]画素の補間について示す図である。
[図 11]画素の補間について示す他の図である。
[図 12]画像変換部の画像変換処理について説明するフローチャートである。
[図 13]タイルサイズを変更した例を示す図である。
[図 14]画像変換部の他の画像変換処理について説明するフローチャートである。 符号の説明
[0019] 1 パーソナルコンピュータ, 31 画像変換部, 41 タイルサイズ決定部, 42 画像領域算出部, 43 画像データ読み出し Z書き込み部, 44 バッファ, 45 変換処理部, 51 変換前データバッファ, 52 変換後データバッファ
発明を実施するための最良の形態
[0020] 図 1は、本発明を適用したパーソナルコンピュータ 1の構成例を示すブロック図であ る。
[0021] CPU(Central Processing Unit)l lは、 ROM(Read Only Memory) 12に記憶されてい るプログラム、または、記憶部 18から RAM(Random Access Memory) 13にロードされ たプログラムに従って各種の処理を実行する。記憶部 18には、例えば、ディジタル力 メラで撮影された画像に各種の処理を施す画像処理プログラムが記憶されている。 RAM13にはまた、 CPU11が各種の処理を実行する上において必要なデータなどが 適宜記憶される。
[0022] CPU11、 ROM12、および RAM13は、バス 14を介して相互に接続されている。この バス 14にはまた、入出力インタフェース 15も接続される。
[0023] 入出力インタフェース 15には、キーボード、マウスなどよりなる入力部 16、
CRT(Cathode Ray Tube), LCD(Liquid Crystal Display)などよりなるディスプレイ、並 びにスピーカなどよりなる出力部 17、 HDD(Hard Disk Drive)などより構成される記憶 部 18、ネットワークを介しての通信を行う通信部 19が接続される。
[0024] 入出力インタフェース 15にはまた、必要に応じてドライブ 20が接続され、磁気ディ スク、光ディスク、光磁気ディスク、或いは半導体メモリなどよりなるリムーバブルメディ ァ 21が適宜装着される。
[0025] このような構成を有するパーソナルコンピュータ 1にお 、ては、例えば、ディジタル力 メラで撮影された画像が入力され、その画像に含まれる樽型歪みや糸巻き型歪みを 補正するための変換処理が行われる。
[0026] 図 2は、長方形の被写体を撮影した場合に、その被写体が樽型に歪んで写ってい る画像 (樽型歪みが生じている画像)と、それを変換して得られる変換後の画像の例 を示す図である。
[0027] 左側の変換前の画像に写っている被写体 Pは、レンズの歪みにより、底辺と上辺の 長さに差が生じているとともに、縦方向の線に歪曲が生じている。図 1のパーソナルコ ンピュータ 1においては、このような画像に対して変換処理が施され、本来の被写体 の形状を表す被写体 P'を含む変換後の画像 (右の画像)が得られる。
[0028] なお、変換前の画像のデータは、例えば、ディジタルカメラ(図示せず)に装着され 、撮影された画像を記憶するリムーバブルメディア 21がドライブ 20に装着されること でパーソナルコンピュータ 1 (記憶部 18)に取り込まれる。
[0029] 図 3は、図 1の CPU11により画像処理プログラムが実行されることで実現される画像 変換部 31の機能構成例を示すブロック図である。
[0030] 画像変換部 31においては、後に詳述するように、撮影された画像の変換後の画像 が分割され、タイル状に配列される複数の領域 (以下、タイル領域と適宜称する)のそ れぞれを対象として順に変換処理等が施される。
[0031] 例えば、ユーザが入力部 16を操作して記憶部 18に記憶されている所定の画像を 指定し、その歪みを補正する変換処理を行うことを指示したとき、指示された画像の サイズやデータ量の情報がタイルサイズ決定部 41に入力される。タイルサイズ決定 部 41は、変換処理を行うために使用するバッファ (RAMI 3)の容量に関する情報も 有しており、画像のサイズやデータ量の情報、および、ノ ッファの容量の情報等に基 づ 、てタイルサイズ (タイル領域のサイズ)を決定する。
[0032] また、タイルサイズ決定部 41は、タイルサイズを決定するとともに、処理対象とする 1 つのタイル領域を選択し、処理対象とするタイル領域の位置を表す情報を画像領域 算出部 42に出力する。
[0033] 後述するように、タイルサイズ決定部 41は、処理対象のタイル領域が、変換後の画 像の原点を通る水平軸、垂直軸 (以下、適宜、中心軸とまとめて称する)を含む場合 、中心軸を含まないものになるように、そのタイルサイズを変更する。
[0034] 画像領域算出部 42は、処理対象とするタイル領域に対応する、変換前の画像上の 領域を算出する。また、画像領域算出部 42は、算出した変換前の画像上の領域を 含む長方形または正方形 (四角形)の領域を算出し、算出した領域の位置を表す情 報を画像データ読み出し Z書き込み部 43に出力する。
[0035] 画像データ読み出し Z書き込み部 43は、画像領域算出部 42により算出された領 域に含まれる画素のデータを記憶部 18から読み出し、読み出したデータをバッファ 4 4に形成される変換前データバッファ 51に記憶させる。
[0036] 変換処理部 45は、変換前データバッファ 51に記憶されている変換前のデータを参 照し、それぞれの画素に射影変換を施すとともに、必要に応じて画素の補間を行い、 得られた変換後のデータをバッファ 44に形成される変換後データバッファ 52に記憶 させる。
[0037] 以上の各部による処理がタイル領域毎に行われ、例えば、歪みが低減された 1つの 画像全体が変換後データバッファ 52に記憶されたとき、変換後のデータが画像変換 部 31から出力される。画像変換部 31から出力されたデータは、記憶部 18に再度記 憶されたり、或いは、ディスプレイに変換後の画像を表示させるために用いられる。
[0038] 次に、画像変換部 31により行われる処理について説明する。
[0039] 図 4は、変換後の画像 (タイル領域)と、変換前の画像の例を示す図である。
[0040] 魚眼レンズなどの像が歪むレンズで撮影を行った場合、図の左側に示されるように 被写体 (格子)が樽型に歪んで写る画像が得られる。説明の便宜上、図 4においては 横方向の歪みのみを図示して 、る(図 6にお ヽても同様である)。
[0041] 例えば、図 4の右側に示されるように、変換後の画像が原点を通る水平軸である X 軸、垂直軸である Y軸に平行な線で分割され、そのときの処理対象のタイル領域が 斜線で示される左上段の領域である場合、画像変換部 31は、その 4つの頂点 abed の位置から、それに対応する、変換前の画像上の点 ABCDを算出する。
[0042] ここで射影変換にっ 、て説明する。
[0043] ディジタルカメラなどに装着されるレンズは通常下式(1)の関係をほぼ満たすように 設計されている。 [0044] [数 1] y=f - tan 0 ■ ■ ■ ( 1 )
式(1)において「y」は像高、「f」は焦点距離、「 Θ」は半画角を表す。
[0045] この関係を満たすレンズが装着されたディジタルカメラで撮影が行われた場合、被 写体の直線部分は直線のものとして撮像面に結像する。しかしながら、レンズの種類 によっては、式(1)の関係を満たさずに設計されているものもあり、特に、焦点距離の 短い広角レンズで撮影した画像を見た場合、図 2の左側に示されるように、直線部が 明らかに歪曲して見えることがある。
[0046] また、魚眼レンズでは、その性質力も式(1)を目標として設計されるわけではなぐ 立体射影方式、等距離射影方式などの受光面に対する射影方式によっても異なる 力 最初力 像が歪むことを前提として設計されている。
[0047] そこで、このような最初力 歪むことを前提として設計されているレンズなどで撮影さ れた画像の歪みを低減させるための変換として、下式(2)による変換がある。
[0048] [数 2]
L1 =A · tan 〔y— LO) ] ■ ■ ■ ( 2 )
[0049] 式(2)において「L0」は変換前の画像の光軸(中心)からの距離を表し、「L1」は変 換後の画像の光軸からの距離を表す。また、「y( 0 )」はレンズの天頂角と像高の特 性を表し、「A」は撮影範囲を規定する定数である。
[0050] 変換前の画像に含まれるそれぞれの画素の位置を式(2)により変換することで画像 全体の歪みが低減される。例えば、図 4において、変換前の画像の点 A乃至 Dをそ れぞれ式 (2)により変換した場合、対応する位置としてタイル領域の点 a乃至 dがそれ ぞれ算出される。
[0051] このように、式(2)を用いた変換により、変換前の画素の位置に対応する変換後の 画素の位置を算出することができる。また、反対に、式 (2)を用いて逆変換を行うこと により、変換後の画素の位置に対応する変換前の画素の位置を算出することができ る。
[0052] そこで、図 3の画像領域算出部 42は、処理対象のタイル領域の 4つの頂点 a乃至 d (図 4)について、それぞれに対応する変換前の画像上の位置を式 (2)から算出する ことで、処理対象のタイル領域に対応する、変換前の画像上の点 A乃至 Dからなる領 域を決定する。
[0053] また、画像領域算出部 42は、変換処理部 45による処理で用いられる画素のデータ を読み出すために、例えば、図 5に示されるような点 EBFD力もなる長方形の領域を 算出する。図 5は、図 4の点 ABCD近傍を拡大して示したものであり、点 EBFDから なる長方形の領域には点 ABCD力 なる領域が含まれている。
[0054] このように、処理対象のタイル領域に中心軸が含まれていない場合、処理対象のタ ィル領域に対応する変換前の画像上の領域を含む四角形の領域 (例えば、図 5の点 EBFD力もなる領域)が画像領域算出部 42により算出され、算出された領域に含ま れる画素のデータ(点 EBFD力もなる四角形内の画素のデータ)が記憶部 18から読 み出される。
[0055] これにより、データの読み出しを容易に行うことが可能になる。すなわち、図 5の点 A BCDからなる領域(曲線を含む領域)に含まれる画素のデータを読み出す場合には 、それぞれの画素の位置をその都度指定する必要があるのに対して、点 EBFDから なる領域 (直線のみからなる領域)に含まれる画素のデータを読み出す場合には、頂 点の位置を指定するだけでそれを行うことができる。
[0056] 図 4においては処理対象のタイル領域が中心軸を含まないものであるとした力 例 えば、図 6の右側に示されるように、そのときの処理対象のタイル領域が中心軸(図 6 の場合、 X軸)を含むものである場合、タイルサイズ決定部 41は、処理対象のタイル 領域が中心軸を含まな 、ものになるようにそのタイルサイズを変更する。
[0057] すなわち、点 a' b' c' d'を頂点とするタイル領域を処理対象の領域とし、その領域に 対応する変換前の画像上の領域を式 (2)の逆変換から算出した場合、図 6の左側に 示されるように、左辺が若干外側に膨らむ曲線を有する点 A ' B' C' D'力もなる領域 が算出される。
[0058] 図 7は、図 6の点 A' B' C' D'からなる領域を拡大したものであり、ここで、上述したよ うに、データを読み出す画素の領域として点 A' B' C' D'からなる四角形の頂点を指 定した場合、図 7の斜線で示される領域のみが指定される。すなわち、その左側の太 線で囲まれる領域 # 1が指定されず、領域 # 1に含まれる画素のデータが読み出さ れないことになる。読み出されたデータに基づいて射影変換、補間処理等が行われ るため、このようにしてデータを読み出す画素の領域を指定した場合、射影変換、補 間処理の対象となるデータが読み出されないことになる。
[0059] 従って、このようにタイル領域に中心軸が含まれる場合、タイルサイズ決定部 41は、 射影変換、補間処理の対象となる画素のデータを確実に読み出すことができるように 、処理対象のタイル領域が中心軸を含まな!/ヽものになるようにタイルサイズを変更す る。
[0060] 図 8は、タイルサイズの具体的な例について示す図である。
[0061] 図 8において、タイル領域全体 (変換後の画像全体)は 400 X 300とされている。ま た、それぞれのタイルサイズは 100 X 60とされ、左から 2列目最上段の領域がタイル 領域 # 1、その下の領域がタイル領域 # 2、さらにその下の領域力タイル領域 # 3とさ れている。
[0062] X軸を含むタイル領域 # 3が処理対象の領域である場合、タイルサイズ決定部 41 は、タイル領域 # 3が X軸を含まないものになるように、図 9に示されるように、タイル サイズを 100 X 30に変更し、タイル領域 # 3を 2つのタイル領域 # 3—1, # 3— 2に分 割する。
[0063] このように、処理対象のタイル領域が中心軸を含むものである場合、タイルサイズを 変更し、中心軸を含まないものにすることにより、処理対象とする画素のデータを記 憶部 18から確実に読み出すことができる。
[0064] また、タイル領域に対応する領域に含まれる画素のデータのみを記憶部 18から読 み出し、処理対象としているため、 1つの画像全体を一括して読み出し、処理を行う 場合に較べてバッファ (RAM13)を十分に確保することができ、迅速な変換を行うこと が可能になる。
[0065] 以上のようにして領域が算出され、読み出された画素のデータに基づいて、変換処 理部 45により処理が行われる。
[0066] すなわち、変換処理部 45により、データが読み出されたそれぞれの画素の位置が 式(2)により変換され、歪みが補正された画像が得られる。具体的には、図 4の左側 の点 A乃至 Dで囲まれる領域が、右側の点 a乃至 dで囲まれる歪みのな 、形状の領 域に変換される。同様に、図 6の左側の点 A'乃至 D'で囲まれる領域力 右側の点 a ,乃至 d'で囲まれる歪みのない形状の領域に変換される。
[0067] また、必要に応じて画素の補間が変換処理部 45により行われる。
[0068] 図 10および図 11は、画素の補間について示す図である。
[0069] 図 10の左側に示される変換後の画像 (タイル領域)上の位置(130, 60)にある画 素 (適宜、注目画素と称する)を補間する場合、注目画素に対応する変換前の画像 上の位置力 式(2)を用いた逆変換により、例えば(100. 4, 52. 7)として特定され、 その特定された位置の近傍にある画素の画素値により補間が行われる。
[0070] 例えば、変換後の画像上の位置(130, 60)に対応する変換前の画像上の位置が
(100. 4, 52. 7)として特定された場合、図 11に示されるように、位置(100, 52)に ある画素 # 1の画素値、位置(100, 53)にある画素 # 2の画素値、位置(101, 53) にある画素 # 3の画素値、位置(101, 52)にある画素 # 4の画素値が参照され、注 目画素が補間される。例えば、それらの画素 # 1乃至 # 4の画素値を用いて、 (100. 4, 52. 7)の小数点の値力 相対的に決定される。例えば、線形補間によって決定し てもよい。
[0071] このような射影変換、補間処理が、処理対象のタイル領域に含まれるそれぞれの画 素を対象として行われる。また、ある処理対象のタイル領域に含まれる全ての画素の 処理が終了した場合、処理対象とするタイル領域が切り替えられ、 1つの画像全体の 処理が終了するまで繰り返される。
[0072] 次に、図 12のフローチャートを参照して、画像変換部 31により行われる画像変換 処理について説明する。
[0073] ステップ S1にお!/、て、タイルサイズ決定部 41は、デフォルトのタイルサイズを設定し 、ステップ S2に進み、処理対象とするタイル領域を選択する。例えば、図 8に示され るように、 100 X 60サイズのタイル領域が設定され、左上段の領域から処理対象のタ ィル領域とされる。
[0074] ステップ S3にお ヽて、タイルサイズ決定部 41は、選択した処理対象のタイル領域 に中心軸が含まれるか否かを判定し、中心軸が含まれると判定した場合、ステップ S 4に進み、図 9を参照して説明したようにして処理対象のタイル領域のサイズを変更 する。
[0075] タイルサイズ決定部 41により選択されたタイル領域の情報 (サイズ、位置)は画像領 域算出部 42に出力される。
[0076] ステップ S5において、画像領域算出部 42は、処理対象のタイル領域の位置から、 それに対応する変換前の画像上の領域を算出する。例えば、図 4乃至図 7を参照し て説明したようにして、曲線を含まない領域が、参照する画素を含む領域として算出 される。画像領域算出部 42により算出された領域の情報は画像データ読み出し Z書 き込み部 43に出力される。
[0077] 画像データ読み出し Z書き込み部 43は、ステップ S6において、変換後のデータを 記憶させるメモリ(変換後データバッファ 52)を確保し、ステップ S7に進み、変換前の データ、すなわち、画像領域算出部 42が算出した領域に含まれる画素のデータを記 憶させるメモリ(変換前データバッファ 51)を確保する。
[0078] ステップ S8において、画像データ読み出し Z書き込み部 43は、画像領域算出部 4 2が算出した領域に含まれる画素のデータを記憶部 18から読み出し、変換前データ ノ ッファ 51に記憶させる。
[0079] 変換処理部 45は、ステップ S9において、変換前データバッファ 51にデータが記憶 されているそれぞれの画素に対して射影変換、補間処理等を施し、変換後のデータ を変換後データバッファ 52に記憶させる。変換処理部 45は、ステップ S10において 、処理対象のタイル領域に対応するものとして読み出された全ての画素に対して射 影変換等を施したか否かを判定し、施していないと判定した場合、ステップ S9に戻り 、各画素に対する処理を繰り返す。
[0080] 一方、ステップ S10において、全ての画素に射影変換等を施したと判定した場合、 ステップ S11に進み、変換処理部 45は、次に、全てのタイル領域について処理を行 つたか否かを判定する。変換処理部 45は、ステップ S11〖こおいて、全てのタイル領 域にっ 、て処理を行って 、な 、と判定した場合、ステップ S 12に進む。
[0081] ステップ S12において、タイルサイズ決定部 41は、処理対象とするタイル領域を変 更し、ステップ S3以降の処理を繰り返す。ステップ S 11において、全てのタイル領域 について処理を行ったと判定された場合、処理は終了され、歪みの補正された 1つ の画像全体のデータが画像変換部 31から出力される。
[0082] 画像変換部 31から出力されたデータは、記憶部 18に再度記憶されたり、或いは、 ディスプレイに画像を表示するために用いられる。
[0083] 以上のように、 1つの画像が複数の領域に分割され、それぞれの領域を対象として 処理が行われるため、メモリを十分に確保できな 、場合でも容易に処理を行うことが できる。
[0084] また、処理対象とする領域は、曲線を含まない領域として指定されるため、処理対 象の領域に含まれる画素のデータの読み出しを容易に行うことができる。
[0085] さらに、タイル領域が中心軸を含むものである場合、中心軸を含まないようにサイズ が変更されて力 データの読み出しが行われるため、射影変換の対象とする画素や 補間で参照する画素のデータが読み出されないといったことを防止することができる
[0086] 以上においては、処理対象のタイル領域が中心軸を含むものである場合に、その 領域のみ、タイルサイズを変更することとした力 いずれかのタイル領域が中心軸を 含むものである場合、全てのタイル領域のサイズが変更されるようにしてもよ!、。
[0087] 例えば、 1つの画像全体のサイズが 2XX 2Y (横 X縦)であり、デフォルトのタイルサ ィズが AX Bである場合、タイルサイズは下式(3)、 (4)から算出される A, X B,〖こ変 更される。
[0088] [数 3]
Nx=X/A (Nxは整数、 少数部分は切り捨て)
Ny=Y/B (Nyは整数、 少数部分は切り捨て) ■ ■ ■ ( 3 )
[0089] [数 4]
Β' =Y/Ny ■ ■ ■ ( 4)
[0090] 例えば、図 8に示されるように、画像全体のサィズカ 00 300 ( = 200、 Y= 15 0)であり、デフォルトのタイルサイズが 100 X 60 (Α= 100、 Β=60)である場合、式( 3)より Nx= 2、 Ny= 2が算出され、それが式 (4)に代入されることで A, = 100、 B, = 75が算出される。
[0091] このようにして算出された値により全てのタイル領域のサイズが変更され、図 8のタイ ル領域は、図 13のサイズのタイル領域に変更される。図 13においては、全てのタイ ル領域が 100 X 75のサイズのものに変更されている。
[0092] このように、タイル領域に中心軸が含まれないようにするものであれば、どのような方 法によりタイルサイズの変更が行われるようにしてもょ 、。
[0093] ここで、図 14のフローチャートを参照して、いずれかのタイル領域に中心軸が含ま れる場合に、全てのタイル領域のサイズを変更して画像変換を行う画像変換部 31の 処理について説明する。
[0094] ステップ S21において、タイルサイズ決定部 41は、デフォルトのタイルサイズを設定 し、ステップ S22に進み、いずれかのタイル領域に中心軸が含まれる力否かを判定 する。
[0095] タイルサイズ決定部 41は、ステップ S22にお!/、て、 、ずれかのタイル領域に中心軸 が含まれると判定した場合、ステップ S23に進み、例えば、上述した式(3)、(4)よりタ ィルサイズを変更する。これにより、図 13に示されるように、いずれのタイル領域にも 中心軸が含まれな ヽようにタイルサイズが変更される。
[0096] 一方、ステップ S22において、いずれのタイル領域にも中心軸が含まれないと判定 された場合、ステップ S23はスキップされる。
[0097] ステップ S24以降の処理は、図 12を参照して説明した処理と同様である。すなわち 、ステップ S24において、処理対象とするタイル領域が画像領域算出部 42により選 択され、ステップ S25において、処理対象のタイル領域の位置から、それに対応する 、変換前の画像上の領域が算出される。
[0098] ステップ S26において、変換後のデータを記憶させる変換後データバッファ 52が確 保され、ステップ S27に進み、変換前のデータを記憶させる変換前データバッファ 51 が確保される。
[0099] ステップ S28において、画像領域算出部 42が算出した領域に含まれる画素のデー タが、記憶部 18から画像データ読み出し Z書き込み部 43により読み出され、変換前 データバッファ 51に記憶される。 [0100] ステップ S29において、変換前データバッファ 51に記憶されているそれぞれの画素 に対して射影変換、補間処理が変換処理部 45により施され、変換後のデータが変換 後データバッファ 52に記憶される。ステップ S30において、読み出された全ての画素 に対して射影変換等が施されたと判定され、続いて、ステップ S31において、全ての タイル領域にっ ヽて処理が行われたと判定された場合、処理は終了される。
[0101] 以上のような処理によっても、中心軸を含まないタイル領域の設定が可能となり、処 理対象となる画素を記憶部 18から確実に読み出させることが可能となる。
[0102] 以上においては、タイル領域に X軸が含まれる場合について説明した力 同様に、 Y軸がタイル領域に含まれる場合、および、 X軸と Y軸の両方がタイル領域に含まれ る場合も、中心軸を含まないものになるようにタイルサイズが変更される。
[0103] 上述した一連の処理は、ハードウェアにより実行させることもできる力 ソフトウェア により実行させることちできる。
[0104] 一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプ ログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプ ログラムをインストールすることで、各種の機能を実行することが可能な、例えば、汎 用のパーソナルコンピュータなどに、ネットワークや記録媒体からインストールされる。
[0105] この記録媒体は、図 1に示されるように、装置本体とは別に、ユーザにプログラムを 提供するために配布される、プログラムが記録されて ヽる磁気ディスク (フレキシブル ディスクを含む)、光ディスク(CD- ROM(Compact Disk-Read Only Memory), DVD(Digital Versatile Disk)を含む)、光磁気ディスク(MD (登録商標) (Minト Disk)を 含む)、もしくは半導体メモリなどよりなるリムーバブルメディア 21により構成されるだ けでなぐ装置本体に予め組み込まれた状態でユーザに提供される、プログラムが記 録されて!/、る ROM 12や、記憶部 18に含まれるハードディスクなどで構成される。
[0106] なお、本明細書にぉ 、て、記録媒体に記録されるプログラムを記述するステップは 、記載された順序に従って時系列的に行われる処理はもちろん、必ずしも時系列的 に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。

Claims

請求の範囲
[1] 撮影された画像の射影変換を行う画像処理方法にお!ヽて、
撮影された前記画像の変換後の画像を、原点を通る水平軸および垂直軸に平行 な線で区切り、第 1の領域を設定する領域設定ステップと、
前記領域設定ステップの処理により設定された前記第 1の領域に対応する、前記 画像の変換前の第 2の領域を前記第 1の領域に射影変換する変換ステップと を含み、
前記領域設定ステップの処理により、前記水平軸および垂直軸を含まないものにな るように前記第 1の領域が設定される
ことを特徴とする画像処理方法。
[2] 前記領域設定ステップの処理により、デフォルトのサイズで設定した場合に前記水 平軸および垂直軸の少なくともいずれかを含むことになる前記第 1の領域が、前記水 平軸および垂直軸を含まな ヽものになるようにさらに分割される
ことを特徴とする請求項 1に記載の画像処理方法。
[3] 前記領域設定ステップの処理により、デフォルトのサイズで設定した場合に前記水 平軸および垂直軸の少なくともいずれかを含むことになる前記第 1の領域があるとき、 V、ずれの領域にも前記水平軸および垂直軸が含まれな 、ものになるように全ての前 記第 1の領域のサイズが変更される
ことを特徴とする請求項 1に記載の画像処理方法。
[4] 撮影された画像の射影変換を行う画像処理装置にお!ヽて、
撮影された前記画像の変換後の画像を、原点を通る水平軸および垂直軸に平行 な線で区切り、第 1の領域を設定する領域設定手段と、
前記領域設定手段により設定された前記第 1の領域に対応する、前記画像の変換 前の第 2の領域を前記第 1の領域に射影変換する変換手段と
を備え、
前記領域設定手段は、前記水平軸および垂直軸を含まないものになるように前記 第 1の領域を設定する
ことを特徴とする画像処理装置。 撮影された画像の射影変換を行う処理をコンピュータに実行させるプログラムにお いて、
撮影された前記画像の変換後の画像を、原点を通る水平軸および垂直軸に平行 な線で区切り、第 1の領域を設定する領域設定ステップと、
前記領域設定ステップの処理により設定された前記第 1の領域に対応する、前記 画像の変換前の第 2の領域を前記第 1の領域に射影変換する変換ステップと を含み、
前記領域設定ステップの処理により、前記水平軸および垂直軸を含まないものにな るように前記第 1の領域が設定される
ことを特徴とするプログラム。
PCT/JP2004/016116 2003-10-29 2004-10-29 画像処理方法および画像処理装置、並びにプログラム WO2005041124A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US10/577,014 US8385686B2 (en) 2003-10-29 2004-10-29 Image processing method based on partitioning of image data, image processing device based on partitioning image data and program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2003369157A JP4124096B2 (ja) 2003-10-29 2003-10-29 画像処理方法および画像処理装置、並びにプログラム
JP2003-369157 2003-10-29

Publications (1)

Publication Number Publication Date
WO2005041124A1 true WO2005041124A1 (ja) 2005-05-06

Family

ID=34510372

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2004/016116 WO2005041124A1 (ja) 2003-10-29 2004-10-29 画像処理方法および画像処理装置、並びにプログラム

Country Status (3)

Country Link
US (1) US8385686B2 (ja)
JP (1) JP4124096B2 (ja)
WO (1) WO2005041124A1 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008061172A (ja) * 2006-09-04 2008-03-13 Sony Corp 画像処理装置、画像処理方法、そのブログラム及びそのプログラムを記録した記録媒体
JP4664259B2 (ja) * 2006-09-08 2011-04-06 三菱電機株式会社 画像補正装置および画像補正方法
US9058668B2 (en) * 2007-05-24 2015-06-16 Broadcom Corporation Method and system for inserting software processing in a hardware image sensor pipeline
US20090322489A1 (en) * 2008-04-14 2009-12-31 Christopher Jones Machine vision rfid exciter triggering system
CA2755164C (en) 2009-03-11 2014-02-25 Sensovation Ag Autofocus method and autofocus device
US10139613B2 (en) 2010-08-20 2018-11-27 Sakura Finetek U.S.A., Inc. Digital microscope and method of sensing an image of a tissue sample
JP5721410B2 (ja) * 2010-12-02 2015-05-20 キヤノン株式会社 画像処理装置、画像処理方法及びプログラム
JP5787637B2 (ja) 2011-06-21 2015-09-30 キヤノン株式会社 画像処理装置、画像処理方法
DE102013103971A1 (de) 2013-04-19 2014-11-06 Sensovation Ag Verfahren zum Erzeugen eines aus mehreren Teilbildern zusammengesetzten Gesamtbilds eines Objekts
US10007102B2 (en) 2013-12-23 2018-06-26 Sakura Finetek U.S.A., Inc. Microscope with slide clamping assembly
JP6278716B2 (ja) 2014-01-22 2018-02-14 キヤノン株式会社 画像処理装置、画像処理方法及びプログラム
KR101715349B1 (ko) * 2015-12-22 2017-03-14 금오공과대학교 산학협력단 바이래터럴 보간법을 이용한 이미지 보정 방법
US11280803B2 (en) 2016-11-22 2022-03-22 Sakura Finetek U.S.A., Inc. Slide management system
JP6900609B2 (ja) * 2016-12-06 2021-07-07 エスゼット ディージェイアイ テクノロジー カンパニー リミテッドSz Dji Technology Co.,Ltd 広角画像を修正するシステム及び方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11250238A (ja) * 1998-02-27 1999-09-17 Kyocera Corp ブロック単位でディストーション補正を行うディジタル撮像装置
JP2000200344A (ja) * 1999-01-04 2000-07-18 Minolta Co Ltd 画像処理装置および画像処理プログラムを記録した記録媒体
JP2001086332A (ja) * 1999-09-09 2001-03-30 Fuji Photo Film Co Ltd 画像処理装置
JP2004064710A (ja) * 2002-07-31 2004-02-26 Fuji Photo Film Co Ltd 撮像装置及びディストーション補正方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69526635T2 (de) * 1994-12-29 2002-12-05 Koninkl Philips Electronics Nv Bilderzeugungsgerät und Verfahren zur Verbesserung geometrischer optischer Bildverzerrungen
US6538691B1 (en) * 1999-01-21 2003-03-25 Intel Corporation Software correction of image distortion in digital cameras
JP4169464B2 (ja) 1999-12-28 2008-10-22 株式会社リコー 画像処理方法と画像処理装置及びコンピュータ読み取り可能な記録媒体
US7039253B2 (en) * 2001-07-24 2006-05-02 Casio Computer Co., Ltd. Image display device, image display method, program, and projection system
JP4144292B2 (ja) * 2002-08-20 2008-09-03 ソニー株式会社 画像処理装置と画像処理システム及び画像処理方法
US7565004B2 (en) * 2003-06-23 2009-07-21 Shoestring Research, Llc Fiducial designs and pose estimation for augmented reality
US20050205778A1 (en) * 2003-10-17 2005-09-22 Gsi Lumonics Corporation Laser trim motion, calibration, imaging, and fixturing techniques
JP4427554B2 (ja) * 2007-02-20 2010-03-10 富士通株式会社 光モジュール及びその製造方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11250238A (ja) * 1998-02-27 1999-09-17 Kyocera Corp ブロック単位でディストーション補正を行うディジタル撮像装置
JP2000200344A (ja) * 1999-01-04 2000-07-18 Minolta Co Ltd 画像処理装置および画像処理プログラムを記録した記録媒体
JP2001086332A (ja) * 1999-09-09 2001-03-30 Fuji Photo Film Co Ltd 画像処理装置
JP2004064710A (ja) * 2002-07-31 2004-02-26 Fuji Photo Film Co Ltd 撮像装置及びディストーション補正方法

Also Published As

Publication number Publication date
US8385686B2 (en) 2013-02-26
JP2005135096A (ja) 2005-05-26
US20070065043A1 (en) 2007-03-22
JP4124096B2 (ja) 2008-07-23

Similar Documents

Publication Publication Date Title
US7301565B2 (en) Correction method, correction device and photographing device
JP4470930B2 (ja) 画像処理装置、画像処理方法、及び、プログラム
WO2005041124A1 (ja) 画像処理方法および画像処理装置、並びにプログラム
US8335398B2 (en) Zoom lens distortion correcting apparatus
JP5046132B2 (ja) 画像データ変換装置
US7499082B2 (en) Distortion correction circuit for generating distortion-corrected image using data for uncorrected image
US8928782B2 (en) Image processing device and image capture device
JP2009105533A (ja) 画像処理装置、撮像装置、画像処理方法および撮像画像処理方法
JP4028306B2 (ja) デジタル撮像装置
JPH11250239A (ja) Yuvデータによりディストーション補正を行うディジタル撮像装置
JPH11252431A (ja) ディストーション補正機能を有するディジタル撮像装置
JPH11275391A (ja) ディストーション補正を選択できるディジタル撮像装置
JPH11250238A (ja) ブロック単位でディストーション補正を行うディジタル撮像装置
JP2018026007A (ja) 画像処理装置、画像処理方法及びプログラム
JPH11250240A (ja) Yuvデータによりディストーション補正を行うディジタル撮像装置
JP4827213B2 (ja) 画像補正装置および画像補正方法
JP4930304B2 (ja) 画像処理装置、画像処理方法、プログラム、及び記録媒体
JP2001292325A (ja) エッジ強調装置、エッジ強調方法および記録媒体
JP2009164674A (ja) ディストーション補正装置
JP5521641B2 (ja) 画像処理用データの圧縮方法および圧縮装置とこれを備えた撮像装置
WO2015098721A1 (ja) 画像処理装置、画像処理方法、画像処理用プログラム、および、撮像装置
JP6440465B2 (ja) 画像処理装置、画像処理方法及びプログラム
JP6762775B2 (ja) 画像処理装置、撮像装置、制御方法及びプログラム
JPH0737079A (ja) 画像歪み補正方法及び装置
JP4279775B2 (ja) 光学歪み補正装置、光学歪み補正方法、及び撮像装置

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2007065043

Country of ref document: US

Ref document number: 10577014

Country of ref document: US

122 Ep: pct application non-entry in european phase
WWP Wipo information: published in national office

Ref document number: 10577014

Country of ref document: US