WO2012172706A1 - 動き画像領域判定装置またはその方法 - Google Patents

動き画像領域判定装置またはその方法 Download PDF

Info

Publication number
WO2012172706A1
WO2012172706A1 PCT/JP2011/077755 JP2011077755W WO2012172706A1 WO 2012172706 A1 WO2012172706 A1 WO 2012172706A1 JP 2011077755 W JP2011077755 W JP 2011077755W WO 2012172706 A1 WO2012172706 A1 WO 2012172706A1
Authority
WO
WIPO (PCT)
Prior art keywords
block
motion
rectangular
row
motion image
Prior art date
Application number
PCT/JP2011/077755
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 CN201180071038.2A priority Critical patent/CN103548055B/zh
Priority to EP11867827.5A priority patent/EP2722817B1/en
Priority to RU2013154986/08A priority patent/RU2592457C2/ru
Priority to ES11867827T priority patent/ES2710860T3/es
Priority to AU2011371064A priority patent/AU2011371064B2/en
Priority to US14/126,353 priority patent/US9311557B2/en
Publication of WO2012172706A1 publication Critical patent/WO2012172706A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/34Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators for rolling or scrolling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/215Motion-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/254Analysis of motion involving subtraction of images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20021Dividing image into blocks, subimages or windows
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2320/00Control of display operating conditions
    • G09G2320/10Special adaptations of display systems for operation with variable images
    • G09G2320/106Determination of movement vectors or equivalent parameters within the image

Definitions

  • the present invention relates to a method for determining a moving image area, and more particularly to determination of a rectangular moving image area.
  • Patent Document 1 discloses motion detection in units of blocks. Specifically, the gradation values of the same pixel in the previous and subsequent frames are compared, and if the gradation values are different, it is determined as a moving pixel, and the ratio of the number of moving pixels is calculated for each block, which is larger than the threshold value. In this case, it is determined that the block is a moving image block.
  • An object of the present invention is to solve the above problems and provide a determination method or apparatus for determining a rectangular motion image area with a simple configuration.
  • a rectangular motion image region determining method is a rectangular motion image region that determines a rectangular motion image region displayed in a part of a display region in which pixels are arranged in rows and columns.
  • a method of determining a motion unit block wherein the display area is divided into unit blocks each having a predetermined number of pixels, and each unit block is a motion unit block in which motion exists.
  • a set of unit blocks belonging to the same column as each unit block located at the top of the unit blocks is defined as a column block, and if there is at least one motion unit block in each column block, the column
  • a motion sequence block determining step for determining a block as a motion sequence block among the unit blocks, the same as each unit block located at the leftmost stage
  • a set of unit blocks belonging to a row is defined as a row block, and if there is at least one motion unit block in each row block, a motion row block determining step for determining the row block as a motion row block
  • a first rectangular motion image region determination step for determining a rectangular region specified by a unit block belonging to both of the block and the motion sequence block as a rectangular motion image region; an outer periphery of unit blocks constituting the rectangular motion image region;
  • each unit block is a motion unit block
  • the motion row block and the motion sequence block are determined, and a rectangular region specified by the unit blocks belonging to both is determined as a rectangular motion image region.
  • the motion image area can be determined.
  • the region defined by the edge in the rectangular motion image region is defined as the rectangular motion based on each pixel in these unit blocks.
  • the row direction in these unit blocks is determined for each row.
  • a row having a different representative pixel value and a column having a different representative pixel value in each column in the column direction are determined as boundaries of the rectangular motion image region. Therefore, the boundary can be determined based on the representative pixel value for each row.
  • step (b) in the second rectangular moving image area determining step, for each unit block constituting the four sides of the outer periphery, for each pixel in these unit blocks, between different frames
  • step (b) it is determined whether the pixel is a moving pixel, and the boundary of the rectangular moving image area is determined. Therefore, the boundary can be determined based on the motion vector of each pixel.
  • a row direction edge is determined for each pixel in these unit blocks.
  • the pixels constituting the column direction edge are extracted, and the boundary of the rectangular motion image area is determined based on the total number of pixels constituting the row direction edge for each row and the total number of pixels constituting the column direction edge for each column. Therefore, the boundary can be determined based on the row direction edge and the column direction edge.
  • the rectangular moving image area determining method is a scroll for determining whether or not the determined rectangular moving image area is different between frames by scrolling before the second rectangular moving image area determining step. Make a decision. Therefore, it can be distinguished whether it corresponds to scrolling or not. Further, when it is determined that the scrolling is performed, the second rectangular motion image region determination step is not performed. Therefore, it is possible to make a quick determination when the case corresponds to scrolling.
  • the determination of whether or not scrolling is an edge for each pixel of the determined rectangular moving image area based on a difference in pixel values from surrounding pixels.
  • the character gap existing area is recognized as a character gap existing area for a row or column in which a predetermined number or more of pixels that are not edges exist in the row direction or the column direction, and the ratio of the character gap existing area to the determined rectangular motion image area Based on the above, it is determined whether the scroll is appropriate. Therefore, it is possible to reliably determine the case where an image including characters is scrolled.
  • the motion sequence block is determined before the second rectangular motion image region determination step for the rectangular motion image region determined in the first rectangular motion image region determination step.
  • the determination step, the motion row block determination step, and the first rectangular motion image region determination step are repeatedly executed. Therefore, even when there are a plurality of motion image areas to be detected, accurate detection is possible.
  • the rectangular motion image region determination device is a rectangular motion image region that determines a rectangular motion image region to be displayed in a part of a display region in which pixels are arranged in rows and columns.
  • a motion unit block determination unit that divides the display area into unit blocks each including a predetermined number of pixels and determines that each unit block is a motion unit block in which motion exists;
  • a set of unit blocks belonging to the same column as each unit block positioned at the top is defined as a column block, and if at least one motion unit block exists in each column block, the column Motion sequence block determining means for determining a block as a motion sequence block;
  • a set of locks is defined as a row block, and when at least one motion unit block exists in each row block, a motion row block determining means for determining the row block as a motion row block, 4) the motion row block and A first rectangular motion image region determining means
  • each unit block is a motion unit block
  • the motion row block and the motion sequence block are determined, and a rectangular region specified by the unit blocks belonging to both is determined as a rectangular motion image region.
  • the motion image area can be determined.
  • the region defined by the edge in the rectangular motion image region is defined as the rectangular motion based on each pixel in these unit blocks.
  • the second rectangular moving image area determining means includes a unit block that constitutes the four sides of the outer periphery, and the row direction within these unit blocks is determined for each line.
  • a row having a different representative pixel value and a column having a different representative pixel value in each column in the column direction are determined as boundaries of the rectangular motion image region. Therefore, the boundary can be determined based on the representative pixel value for each row.
  • the second rectangular moving image region determining means is configured to determine, for each pixel in these unit blocks, between different frames for the unit blocks constituting the outer four sides.
  • step (b) it is determined whether the pixel is a moving pixel, and the boundary of the rectangular moving image area is determined. Therefore, the boundary can be determined based on the motion vector of each pixel.
  • the second rectangular moving image region determining means includes, for the unit blocks constituting the outer four sides, for each pixel in these unit blocks in the row direction and The pixels constituting the column direction edge are extracted, and the boundary of the rectangular motion image region is determined based on the total number in the row direction for each row and the total number of pixels constituting the column direction edge for each column. Therefore, the boundary can be determined based on the row direction edge and the column direction edge.
  • the rectangular motion image region determination device is configured to perform the motion sequence block determination unit, the motion row block determination unit, and the rectangle for the rectangular motion image region determined by the first rectangular motion image region determination unit. Repetitive means for repeatedly executing the processing by the moving image region determining means. Therefore, even when there are a plurality of motion image areas to be detected, accurate detection is possible.
  • the rectangular motion image region determination method is a rectangular motion image region that determines a rectangular motion image region displayed in a part of a display region in which pixels are arranged in rows and columns.
  • a determination method wherein the display area is divided into unit blocks each including a predetermined number of pixels, and a motion unit block determination step for determining that each unit block is a motion unit block in which motion exists, Among them, a set of unit blocks belonging to the same column as each unit block located at the top row is defined as a column block, and if at least one motion unit block exists in each column block, that column block is defined as a motion column block A step of determining a motion sequence block as a unit block belonging to the same row as each unit block located in the leftmost stage among the unit blocks.
  • a set of position blocks is defined as a row block, and when there is at least one motion unit block in each row block, a motion row block determining step for determining the row block as a motion row block, the motion row block and the motion block
  • a first rectangular motion image area determining step for determining a rectangular area specified by the unit blocks belonging to both of the motion sequence blocks as a rectangular motion image area;
  • each unit block is a motion unit block
  • the motion row block and the motion sequence block are determined, and a rectangular region specified by the unit blocks belonging to both is determined as a rectangular motion image region.
  • the motion image area can be determined.
  • the motion sequence block determination step and the motion row block determination step are repeated for the determined rectangular region. Execute. Therefore, even when there are a plurality of motion image areas to be detected, accurate detection is possible.
  • a scroll region determination device is a scroll region determination device that determines whether or not a determination target region in a screen is a scroll region, and for each pixel of the determination target region, a pixel with a surrounding pixel Edge pixel determination means for determining whether or not an edge is based on a difference in values, and determines a line or column in which a predetermined number or more of non-edge pixels exist in the same row or column as the character gap existence region Character gap existence area determination means, and scroll area determination means for determining whether or not the character gap existence area is a scroll area based on a ratio of the character gap existence area to the determination target area.
  • a boundary determination device is a boundary determination device that determines a boundary of a rectangular region existing on one screen, and determines pixels that constitute an edge based on a pixel value of each pixel in a determination target pixel.
  • Edge pixel determination means for determining, extracting pixels constituting the row direction edge as row direction edge pixels, calculating the total number of the row direction edges for each row, and based on the total number of the row direction edges of each row,
  • a row direction boundary determining means for determining a boundary, extracting pixels constituting a column direction edge as a column direction edge pixel, calculating a total number of the column direction edges for each column, and based on the total number of the column direction edges of each column
  • Column direction boundary determining means for determining a boundary in the column direction
  • rectangular area determining means for determining the determined row direction boundary and the column direction boundary as a boundary of the rectangular area.
  • the boundary determination device is a means for determining a pixel to be determined by the edge pixel determination means, and A rough area determining means having the following means is provided.
  • Judgment means 2) Among the unit blocks, a set of unit blocks belonging to the same column as each unit block located at the top row is defined as a column block, and if at least one motion unit block exists in each column block, Motion sequence block determining means for determining a sequence block as a motion sequence block; 3) Among the unit blocks, a set of unit blocks belonging to the same row as each unit block located in the leftmost stage is defined as a row block, and when at least one motion unit block exists in each row block, A motion row block determining means for determining the row block as a motion row block; 4) First rectangular motion image region determining means for determining a rectangular region specified by a unit block belonging to both the motion row block and the motion sequence block as a rectangular motion image region; 5) Target pixel determining means for determining
  • pixel value includes not only luminance values but also numerical values for specifying image information such as RGB values.
  • rectangular motion image area refers to a rectangular area that has different pixel values between a plurality of frames and constitutes a motion image area.
  • “Column block” refers to a set of unit blocks belonging to the same column as each unit block located at the top of the unit blocks. In the present embodiment, one unit block located in the uppermost stage is identified and a column block is determined. As a result, if one unit block located in the uppermost stage is included, a unit block other than the uppermost stage is included. You may make it identify from a line. “Row block” refers to a set of unit blocks belonging to the same row as the unit blocks located in the leftmost stage among the unit blocks. As a result, the specific method is not particularly limited as long as it includes one unit block located in the leftmost stage.
  • the “first rectangular moving image region determining step” and the “second rectangular moving image region determining step” are respectively performed by a moving image region determining process (step S7 in FIG. 3) and a boundary determining process (step S9 in FIG. 3). Applicable.
  • the “column direction” refers to the direction in which each row is arranged, and in the embodiment refers to the ⁇ direction.
  • “Row direction edge” refers to an edge in a direction parallel to the row direction, and “Column direction edge” refers to an edge in a direction parallel to the column direction.
  • FIG. 3 is a functional block diagram of the rectangular motion image region determination device 1.
  • FIG. It is an example of a hardware structure at the time of comprising the rectangular moving image area determination apparatus 1 using CPU. It is the whole flowchart.
  • a display area 100 in which motion image areas 110 to 112 exist is shown.
  • FIG. 1 shows a functional block diagram of a rectangular motion image region determination device 1 according to an embodiment of the present invention.
  • the rectangular motion image region determination device 1 is a device that determines a rectangular motion image region to be displayed in a part of a display region in which pixels are arranged in a matrix in the row direction and the column direction. 5, a motion sequence block determination unit 7, a motion row block determination unit 9, a first rectangular motion image region determination unit 11, a repetition unit 13, and a second rectangular motion image region determination unit 14.
  • the motion unit block determination means 5 divides the display area into unit blocks each including a predetermined number of pixels, and determines that each unit block is a motion unit block in which motion exists.
  • the motion column block determining means 7 defines a set of unit blocks belonging to the same column as each unit block located at the top of the unit blocks as a column block, and at least one motion unit block is included in each column block. If it exists, the column block is determined as a motion column block.
  • the motion row block determining means 9 defines a set of unit blocks belonging to the same row as each unit block located in the leftmost stage among the unit blocks as a row block, and at least one motion unit block is included in each row block. If it exists, the row block is determined as a motion row block.
  • the first rectangular motion image area determining means 11 determines a rectangular area specified by a unit block belonging to both the motion row block and the motion sequence block as a rectangular motion image area.
  • the repeater 13 repeatedly executes the processing by the motion sequence block determiner 7, the motion row block determiner 9, and the rectangular motion image region determiner 11 for the rectangular motion image region determined by the first rectangular motion image region determiner 11.
  • Let The second rectangular motion image area determining means 14 is configured to determine the rectangular motion image area based on each pixel in the unit blocks constituting the outer four sides of the unit blocks constituting the rectangular motion image area. An area defined by an edge inside is defined as the rectangular motion image area.
  • FIG. 2 shows a hardware configuration of the rectangular motion image area determination device 1.
  • the rectangular motion image area determination device 1 includes a CPU 23, a RAM 25, and a flash memory 26.
  • the flash memory 26 stores a program 26p.
  • the program 26p performs a rectangular motion image region determination process as will be described later.
  • the RAM 25 stores calculation results and the like.
  • the frame memory 27 holds image data for one screen.
  • the CPU 23 determines whether or not it is a moving image area composed of pixels with motion based on the pixel values constituting the display area stored in the memory 27, and stores the result in the RAM 25.
  • pixels are arranged in a matrix in the row direction ⁇ and the column direction ⁇ .
  • CPU 23 performs block division (step S1 in FIG. 3).
  • 32 * 32 pixels are used as one block, and the display area 100 shown in FIG. 4 is divided into a plurality of blocks in a matrix.
  • the block is divided into n + 1 blocks in the ⁇ direction and m + 1 blocks in the ⁇ direction.
  • CPU 23 determines representative values for all blocks (step S3 in FIG. 3).
  • the representative value instead of using the average value of the pixel values in one block, the top pixel value, and the value as it is, a hash value such as CRC may be used as the representative value.
  • the average value can be expressed in 18-bit length in a 32 * 32 * 8-bit image, but the upper and lower 10 bits may be rounded down and only the middle 8 bits may be used.
  • (n + 1) * (m + 1) block representative values are stored in the RAM 25.
  • CPU 23 determines a motion block among (n + 1) * (m + 1) blocks (step S5).
  • the motion block determination process will be described with reference to FIG.
  • CPU 23 initializes processing block numbers i and j (steps S11 and S13 in FIG. 5).
  • the block (0, 0) is compared with the representative value of the previous frame (step S15).
  • the representative values at time t and time t ⁇ 1 are compared.
  • the CPU 23 determines whether or not the difference between the representative values exceeds the threshold value thb (step S17). If the difference between the representative values exceeds the threshold value thb, it is determined as a motion block (step S19). On the other hand, if the difference between the representative values does not exceed the threshold thb, it is determined as a non-motion block (step S21).
  • step S23 if the processing block number j is final, the process proceeds to step S27, and the CPU 23 determines whether or not the processing block number i is final. In this case, since it is not final, the processing block number i is incremented (step S29), and step S13 and subsequent steps are repeated. If the process block number i is the last in step S27, the process is terminated.
  • a motion block is determined for (n + 1) * (m + 1) blocks.
  • blocks (4, 2), (4, 3), (4, 4)... are determined as motion blocks.
  • the CPU 23 performs a motion image area determination process (step S7 in FIG. 3). Details of the moving image region determination processing will be described with reference to FIGS.
  • the CPU 23 determines that the column is a non-motion column (step S37).
  • the CPU 23 determines whether there is a temporary motion sequence that has been added and stored (step S39). If there is, the CPU 23 determines whether the adjacent set has a width that exceeds the threshold thw (step S39).
  • the threshold thw is set to 2 blocks or more. In this case, since the temporary motion sequence stored in addition exists from blocks (0, 2) to (0, 8), the threshold value thw is exceeded, so the temporary motion sequence is set as a motion sequence (step S45).
  • the CPU 23 determines whether or not the processing block number j is final (step S46).
  • the CPU 23 determines that the column is a non-motion column (step S37). The CPU 23 determines whether or not the detected temporary motion sequence exists (step S39). In this case, since it does not exist, the CPU 23 determines whether or not the processing block number j is final (step S46).
  • the CPU 23 determines that the column is a non-motion column (step S37). The CPU 23 determines whether or not the detected temporary motion sequence exists (step S39). If there is, the CPU 23 determines whether or not the adjacent set has a width exceeding the threshold thw (step S41). ). In the present embodiment, since the threshold thw is 2 blocks or more, the width of the temporary motion sequence does not exceed the threshold thw, so the temporary motion sequence is set as a non-motion sequence (step S43). Thereby, it is possible to prevent an image area such as a mouse from being erroneously recognized as a moving image area.
  • step S49 it is determined whether or not the provisional motion sequence that has been added and stored exists, and if it exists, the processing from step S41 is executed.
  • Fig. 8 shows the motion sequence after detection.
  • the region 121 is determined as a motion sequence.
  • the regions 122 and 123 to which the motion blocks (6, n-3) and (m-3, n-6) belong do not have a width equal to or greater than the threshold thw in the direction of the arrow ⁇ . Is not determined.
  • the CPU 23 initializes the processing block number i (step S51 in FIG. 9).
  • the CPU 23 determines whether or not there is at least one motion block in the row of the block (0, 0) (step S53). In this case, as shown in FIG. 6, since there is no motion block in the block (0,0) and its horizontal blocks (0,1) to (0, n), such a row is a non-motion row. Is determined (step S57).
  • step S57 The CPU 23 determines whether there is a motion row that has been added and stored (step S59). In this case, since there are motion lines that have been added and stored, it is determined whether or not the set has a width that exceeds the threshold thw (step S61).
  • the threshold thw is set to 2 blocks or more. In this case, since there are detected motion rows from block (4,0) to (8,0), the threshold thw is exceeded, so the temporary motion row is set as a motion row (step S65).
  • step S69 is the same as that of step S49, description thereof is omitted.
  • Fig. 10 shows the motion line after detection.
  • the area 131 is determined as a movement line.
  • the motion block (6, n-3) belongs to the region 131.
  • the region 132 to which the motion block (m ⁇ 3, n ⁇ 6) belongs does not have a width equal to or larger than the threshold thw in the arrow ⁇ direction, and is not determined as a motion row.
  • the CPU 23 determines a block belonging to both the motion sequence and the motion row as a motion image area (step S70 in FIG. 9).
  • a block belonging to an area 140 where the area 121 and the area 131 shown in FIG. 11 overlap is determined as a moving image area.
  • the block (4,5) and the like are determined as motion image regions. . In this way, it is possible to prevent spillage in relation to the surrounding blocks.
  • step S9 in FIG. 3 the boundary of the motion image area in the block composed of 32 * 32 pixels is obtained.
  • step S9 the boundary 150 of the motion image area in units of one pixel can be obtained. Details of step S9 will be described with reference to FIG.
  • step S80 extracts the upper block (step S80 in FIG. 12). In this case, a total of seven blocks (4,2) to (4,8) shown in FIG. 13 are extracted.
  • the CPU 23 initializes the processing row number P (step S81), extracts all the pixels in the P row of the extracted block, and calculates the representative value (step S83). In this case, 32 pixels in the 0th row of the block (4,2), 32 pixels... And 7 * 32 pixels in the 0th row of the block (4,3) are extracted, and their representative values are calculated. In this embodiment, the representative value is the average value of the extracted pixels.
  • the CPU 23 extracts all the pixels in the processing row number P + 1 row of the extracted block and calculates the representative value (step S85).
  • 32 pixels in the first row of the block (4, 2), 32 pixels... And 7 * 32 pixels in the first row of the block (4, 3) are extracted, and their representative values are calculated.
  • step S87 determines whether or not the representative value obtained in step S83 is different from the representative value obtained in step S85 (step S87). If both are different in step S87, it is determined that the row of the pixel (P, 0) is a boundary (step S93). If they are not different in step S87, the process row number P is incremented (step S89), and step S83 and subsequent steps are repeated until the final pixel of the extraction block (32 pixels in this case) is reached (step S91). If both are not different in step S87 even for the last pixel, it is determined that the end of the extracted block is a boundary (step S95).
  • FIG. 12 illustrates the case where the boundary of one pixel unit in the upper block is extracted, but the same applies to the lower block.
  • pixels for one column are extracted in the vertical direction, and the representative values may be compared with adjacent columns.
  • This device can automatically detect the motion image area.
  • the determination can also be detected in several frames. Therefore, even if the moving image area itself dynamically changes on the monitor, the moving image area can be detected almost in real time.
  • step S7 in FIG. 3 is further repeated for the determined motion image area, so that the motion image area is detected even when there are a plurality of motion image areas 201 to 207 as shown in FIG. be able to.
  • step S7 in FIG. 3 Once the process of step S7 in FIG. 3 is performed, motion image areas 301 to 304 as shown in FIG. 15 are determined.
  • the region 207 is not detected as a motion image region because it does not have a width equal to or greater than the threshold thw.
  • the motion region 301 originally includes a region that is not a motion image region.
  • the CPU 23 regards the areas 301 to 304 as the entire image area, and detects the motion image area again. Thereby, for example, in the case of the area 301, the area 311 defined by the block coordinates (y1, x1) (y3, x11) and the area 312 defined by the block coordinates (y1, x12) (y3, x13) are detected. Is done. The same applies to the other areas 302 to 304.
  • the region 311 is regarded as the entire image region, and the motion image region is detected again. Thereby, an area defined by the block coordinates (y1, x1) (y11, x11) is detected. The same applies to the region 312.
  • Such repeated detection may be performed until it can no longer be divided, or the upper limit number of repeated detections may be determined in advance.
  • CPU23 extracts the block except the edge part among upper blocks (Step S100 of Drawing 17). In this case, a total of five blocks (4,3) to (4,7) shown in FIG. 13 are extracted. The reason for removing the end portion in this way is that there is a possibility that some of the blocks at both end portions do not have an edge. However, this end block may also be adopted.
  • the CPU 23 initializes the processing row number r and the processing pixel number g (steps S101 and S102 in FIG. 17), and determines whether the g-th pixel of the extracted block of the row number “0” is a horizontal edge pixel (row direction edge). It is determined whether or not (step S103). Whether or not the pixel is a horizontal edge pixel may be determined based on a luminance difference from an adjacent pixel. In the present embodiment, a filter and an arithmetic expression as shown in FIG. 18A are employed.
  • the CPU 23 determines that the Pth pixel is a horizontal edge pixel, the CPU 23 increments the total number Et (step S105 in FIG. 17). The CPU 23 determines whether or not all lines have been completed (step S107). If not, the processing pixel number g is incremented (step S109), and steps S103 to S107 are repeated.
  • the CPU 23 determines whether or not the total number Et of horizontal edges in the line is larger than a preset threshold value ths (step S111). This is to eliminate the horizontal edge pixels as contours in the moving image area.
  • the CPU 23 sets it as a boundary (step S113). As a result, a boundary where the set of horizontal edges exceeds the threshold ths can be obtained.
  • the threshold ths may be a fixed threshold, or a ratio may be set in advance and calculated according to the size of the detected area (number of blocks).
  • step S111 if “NO”, the CPU 23 determines whether or not all lines have been completed (step S113). If all lines have not been completed, the CPU 23 increments the process line number r and repeats steps S102 to S111.
  • the boundary can be determined on a pixel-by-pixel basis.
  • vertical edges may be detected in the same manner using the filters and arithmetic expressions shown in FIG. 18B for the unit blocks located at the rightmost and leftmost stages.
  • boundary determination is performed based on the total number of vertical edges and horizontal edges. Therefore, even a moving image region on a messy background can be detected. In addition, detection accuracy is improved and shaking of the moving image area is reduced.
  • the pixels of all the blocks except for the end portion among the blocks obtained in FIG. 11 are adopted, but it may be determined by a part thereof.
  • the comparison with the threshold value ths is a total of one line.
  • the boundary is a boundary.
  • edge images may exist even in natural images. Therefore, edges that are not continuous over a certain number may be removed from the calculation of the total number.
  • the present invention is applied to the case where the rectangular area is determined and the boundary of one pixel unit for the block on the outer periphery thereof is determined.
  • the present invention is applicable to general motion estimation and other fields.
  • a boundary of a plurality of pixel units (for example, 2 * 2 pixel units) may be obtained instead of one pixel unit.
  • the boundary is determined by extracting edge pixels. However, for each pixel in the target block, it can be determined whether there is a motion vector between different frames, and a motion vector can be detected. You may make it judge that the boundary of a pixel and the pixel which cannot be detected is a boundary.
  • the boundaries of each frame may be stored in sequence, and if the boundary cannot be detected in a certain frame, the accumulated boundary may be adopted.
  • the number of frames to be accumulated is set to ten or more frames.
  • the CPU 23 initializes the target row number Q and the number of matching rows k (step S121 in FIG. 20), and measures the total number of edge pixels Enq in the Q row of the extracted block (step S123). Whether or not the pixel is an edge pixel may be determined based on a luminance difference from surrounding pixels.
  • the CPU 23 determines whether the total edge pixel number Enq is larger than the threshold value thm and the immediately preceding total edge pixel number En (q-1) is smaller than the threshold value thn (step S125). When the determination in step S125 is “yes”, the CPU 23 increments the number of matching lines k (step S127).
  • CPU 23 determines whether all rows have been determined (step S131). If all the rows have not been determined, the CPU 23 increments the processing row number Q (step S133) and repeats step S123 to step S127.
  • step S131 determines whether the number of matching rows k is greater than the threshold thg (step S135). If the number of matching lines k is greater than the threshold thg, it is determined that the movement is due to scrolling (step S137).
  • step S9 Such scroll determination is performed between step S7 and step S9 in FIG. 3, and when it is determined that the determination is scroll determination, the process of step S9 may be omitted.
  • scroll determination may be performed on a part of lines instead of all lines in the area.
  • the determination can be similarly made even if the text data is written vertically.
  • the scroll determination is not limited to this method, and may be a well-known scroll determination.
  • This specific area is not limited to a moving image area by moving image area detection, and may be a specific area in an image regardless of whether it is a still image or a moving image.
  • the luminance value is adopted as the pixel value, but it may be an RGB value or the like.
  • step S15 in FIG. 5 it is determined whether or not the t-th frame and the t + 1-th frame are blocks constituting a moving image area. For example, it may be determined whether there is movement between the t-th frame and the t + 2 frame. Further, instead of comparing the two frames, for example, 16 frames may be adopted by adding the front and rear frames.
  • the boundary line determination process in step S9 in FIG. 3 is arbitrary, and may not be performed when the boundary line in pixel units is not necessary.
  • all the pixel values in one row or all the columns are used for all the blocks located on the outer periphery. Moreover, you may make it judge with some blocks instead of all the blocks.
  • step S15 in FIG. 5 the past representative values at the same position may be held and compared.
  • one block is composed of 32 * 32 pixels, but the present invention is not limited to this.
  • step S9 When the value of any pixel itself (for example, the pixel value at the upper left corner of the block) is used instead of the average value or hash value of the pixels, the processing of step S9 in FIG. Then, the boundary may be obtained. For example, when 7 * 5 blocks are detected as a motion image area in the process of step S7, the process of step S9 is performed with 9 * 7 blocks added by one block around the block.
  • the set top box may be configured as a switching hub for switching the output destination monitor of input data.
  • a rectangular motion image area can be detected with one pixel accuracy. Furthermore, a plurality of rectangular motion image areas can be determined. In addition, it is possible to remove a small area movement with a small width. For example, it is possible to take measures against pseudo movements such as a mouse pointer. Moreover, since these can be distinguished with respect to the movement area
  • the display area is divided into unit blocks each including a predetermined number of pixels, and the pixel values of the predetermined number of pixels belonging to each unit block are set. Based on this, the representative pixel value of each unit block is calculated and compared with the representative value of the unit block at the same position in the comparison target frame for each unit block.
  • Judged as a motion unit block that exists the present invention is not limited to this, and a method that can determine whether each unit block is a motion unit block in which motion exists may be employed. For example, as already described, it is possible to employ a well-known motion unit block determination step, such as comparing the sum of representative values of the same blocks of a predetermined number of frames.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computer Hardware Design (AREA)
  • Image Analysis (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Picture Signal Circuits (AREA)
  • Studio Devices (AREA)

Abstract

【課題】 簡易な構成で矩形動き画像領域を判定する。 【解決手段】 動き単位ブロック判断手段5は、各単位ブロックについて、比較対象のフレームの同じ位置の単位ブロックの代表値が閾値を超える場合には、動き単位ブロックとする。動き列ブロック決定手段7は、ある単位ブロックと同じ列に属する単位ブロックの集合を列ブロックとして定義し、各列ブロックに動き単位ブロックが存在する場合には動き列ブロックとして決定する。動き行ブロック決定手段9は、各行ブロックに動き単位ブロックが存在する場合には動き行ブロックとして決定する。第1矩形動き画像領域決定手段11は、動き行ブロックおよび動き列ブロックの双方に属する単位ブロックで特定される矩形領域を矩形動き画像領域として決定する。

Description

動き画像領域判定装置またはその方法
 この発明は、動き画像領域の判定方法に関し、特に、矩形の動き画像領域判定に関する。
 今日、入力された動画や静止画の信号を高解像度化して出力する技術が注目されている。例えば、表示領域のうち動画領域にのみ、解像度を上げる処理ができれば、粗い入力動画であっても、みやすく表示することができる。
 かかる動画領域が固定であれば手動で特定することもできるが、その場合でも、特定処理が煩雑である。まして、前記動画領域が移動する場合、前記手動特定では限界がある。
 動画領域の特定については種々の方法が提案されている。例えば、特許文献1には、ブロック単位での動き検出が開示されている。具体的には、前後フレームにおける同一画素の階調値を比較し、階調値が異なる場合には動画素と判断し、ブロック単位で、動画素の画素数割合を求め、これが閾値よりも大きい場合には、そのブロックは動画像のブロックと判断するというものである。
特開平11-007266号公報
 しかし、上記特許文献1に開示された判定方法では、1画素毎の比較をした後、ブロックごとに画素数をカウントするので、1フレームの全画素についての比較が必要であり、実現コストや設計難易度が高くなる。
 この発明は、上記問題を解決し、簡易な構成で矩形動き画像領域を判定する判定方法またはその装置を提供することを目的とする。
 (1)本発明にかかる矩形動き画像領域決定方法は、行方向および列方向に画素が行列配置された表示領域のうち、その一部に表示される矩形動き画像領域を決定する矩形動き画像領域決定方法であって、前記表示領域を、所定数の画素で構成される単位ブロックに分割するとともに、各単位ブロックが、動きが存在する動き単位ブロックであるか否か判断する動き単位ブロック判断ステップ、 前記単位ブロックのうち、最上段に位置する各単位ブロックと同じ列に属する単位ブロックの集合を列ブロックとして定義し、各列ブロックに少なくとも1以上の動き単位ブロックが存在する場合には当該列ブロックを動き列ブロックとして決定する動き列ブロック決定ステップ、前記単位ブロックのうち、最左端段に位置する各単位ブロックと同じ行に属する単位ブロックの集合を行ブロックとして定義し、各行ブロックに少なくとも1以上の動き単位ブロックが存在する場合には、当該行ブロックを動き行ブロックとして決定する動き行ブロック決定ステップ、前記動き行ブロックおよび前記動き列ブロックの双方に属する単位ブロックで特定される矩形領域を矩形動き画像領域として決定する第1矩形動き画像領域決定ステップ、前記矩形動き画像領域を構成する単位ブロックの内、外周の四辺を構成する単位ブロックについて、これらの単位ブロック内の各画素に基づき、前記矩形動き画像領域内のエッジで定義される領域を前記矩形動き画像領域とする第2矩形動き画像領域決定ステップを備えている。
 このように、前記単位ブロック毎に動き単位ブロックか否か判断し、前記動き行ブロックおよび動き列ブロックを決定し、その双方に属する単位ブロックで特定される矩形領域を矩形動き画像領域として決定することにより、動き画像領域を決定することができる。また、その領域を構成する単位ブロックの内、外周の四辺を構成する単位ブロックについて、これらの単位ブロック内の各画素に基づき、前記矩形動き画像領域内のエッジで定義される領域を前記矩形動き画像領域とすることにより、より精密な動き画像領域を決定することができる。
 (2)本発明にかかる矩形動き画像領域決定方法は、前記第2矩形動き画像領域決定ステップでは、前記外周の四辺を構成する単位ブロックについて、これらの単位ブロック内の行方向については、各行の代表画素値が異なる行を、列方向については各列の代表画素値が異なる列を、前記矩形動き画像領域の境界として決定する。したがって、行毎の代表画素値に基づいて境界を決定することができる。
 (3)本発明にかかる矩形動き画像領域決定方法は、前記第2矩形動き画像領域決定ステップでは、前記外周の四辺を構成する単位ブロックについて、これらの単位ブロック内の各画素について、異なるフレーム間で動きが存在する動き画素か否かを判断して、前記矩形動き画像領域の境界を決定する。したがって、各画素の動きベクトルに基づいて境界を決定することができる。
 (4)本発明にかかる矩形動き画像領域決定方法は、前記第2矩形動き画像領域決定ステップでは、前記外周の四辺を構成する単位ブロックについて、これらの単位ブロック内の各画素について、行方向エッジおよび列方向エッジを構成する画素を抽出し、各行についての行方向エッジを構成する画素の総数、各列について列方向エッジを構成する画素の総数に基づき前記矩形動き画像領域の境界を決定する。したがって行方向エッジおよび列方向エッジに基づいて境界を決定することができる。
 (5)本発明にかかる矩形動き画像領域決定方法は、前記第2矩形動き画像領域決定ステップの前に、決定した矩形動き画像領域がスクロールによってフレーム間で画像が異なるか否かを判定するスクロール該当判定をする。したがって、スクロールに該当するのかそうでないかを区別することができる。また、スクロールであると判断した場合には、前記第2矩形動き画像領域決定ステップを行わない。したがって、スクロールに該当する場合に迅速な判断が可能となる。
 (6)本発明にかかる矩形動き画像領域決定方法においては、前記スクロール該当判定は、決定した矩形動き画像領域の各画素について、周辺画素との画素値の差に基づいて、エッジであるか否かを判断し、前記エッジではない画素が行方向または列方向に所定数以上存在する行または列について、文字隙間存在領域として認識し、前記決定した矩形動き画像領域に対する前記文字隙間存在領域の割合に基づいてスクロール該当判定をする。したがって、文字を含む画像をスクロールしている場合を、確実に判断することができる。
 (7)本発明にかかる矩形動き画像領域決定方法においては、第1矩形動き画像領域決定ステップにて決定した矩形動き画像領域について、第2矩形動き画像領域決定ステップの前に、前記動き列ブロック決定ステップ、前記動き行ブロック決定ステップ、および前記第1矩形動き画像領域決定ステップを繰り返し実行する。したがって、検出する動き画像領域が複数ある場合でも、正確に検出が可能となる。
 (8)本発明にかかる矩形動き画像領域決定装置は、行方向および列方向に画素が行列配置された表示領域のうち、その一部に表示される矩形動き画像領域を決定する矩形動き画像領域決定装置であって、1)前記表示領域を、所定数の画素で構成される単位ブロックに分割するとともに、各単位ブロックが、動きが存在する動き単位ブロックと判断する動き単位ブロック判断手段、2)前記単位ブロックのうち、最上段に位置する各単位ブロックと同じ列に属する単位ブロックの集合を列ブロックとして定義し、各列ブロックに少なくとも1以上の動き単位ブロックが存在する場合には当該列ブロックを動き列ブロックとして決定する動き列ブロック決定手段、3)前記単位ブロックのうち、最左端段に位置する各単位ブロックと同じ行に属する単位ブロックの集合を行ブロックとして定義し、各行ブロックに少なくとも1以上の動き単位ブロックが存在する場合には、当該行ブロックを動き行ブロックとして決定する動き行ブロック決定手段、4)前記動き行ブロックおよび前記動き列ブロックの双方に属する単位ブロックで特定される矩形領域を矩形動き画像領域として決定する第1矩形動き画像領域決定手段、5)前記矩形動き画像領域を構成する単位ブロックの内、外周の四辺を構成する単位ブロックについて、これらの単位ブロック内の各画素に基づき、前記矩形動き画像領域内のエッジで定義される領域を前記矩形動き画像領域とする第2矩形動き画像領域決定手段を備えている。
 このように、前記単位ブロック毎に動き単位ブロックか否か判断し、前記動き行ブロックおよび動き列ブロックを決定し、その双方に属する単位ブロックで特定される矩形領域を矩形動き画像領域として決定することにより、動き画像領域を決定することができる。また、その領域を構成する単位ブロックの内、外周の四辺を構成する単位ブロックについて、これらの単位ブロック内の各画素に基づき、前記矩形動き画像領域内のエッジで定義される領域を前記矩形動き画像領域とすることにより、より精密な動き画像領域を決定することができる。
 (9)本発明にかかる矩形動き画像領域決定装置においては、前記第2矩形動き画像領域決定手段は、外周の四辺を構成する単位ブロックについて、これらの単位ブロック内の行方向については、各行の代表画素値が異なる行を、列方向については各列の代表画素値が異なる列を、前記矩形動き画像領域の境界として決定する。したがって、行毎の代表画素値に基づいて境界を決定することができる。
 (10)本発明にかかる矩形動き画像領域決定装置においては、前記第2矩形動き画像領域決定手段は、外周の四辺を構成する単位ブロックについて、これらの単位ブロック内の各画素について、異なるフレーム間で動きが存在する動き画素か否かを判断して、前記矩形動き画像領域の境界を決定する。したがって、各画素の動きベクトルに基づいて境界を決定することができる。
 (11)本発明にかかる矩形動き画像領域決定装置においては、前記第2矩形動き画像領域決定手段は、外周の四辺を構成する単位ブロックについて、これらの単位ブロック内の各画素について、行方向および列方向エッジを構成する画素を抽出し、各行についての行方向の総数、各列について列方向エッジを構成する画素の総数に基づき前記矩形動き画像領域の境界を決定する。したがって行方向エッジおよび列方向エッジに基づいて境界を決定することができる。
 (12)本発明にかかる矩形動き画像領域決定装置は、前記第1矩形動き画像領域決定手段が決定した矩形動き画像領域について、前記動き列ブロック決定手段、前記動き行ブロック決定手段、および前記矩形動き画像領域決定手段による処理を繰り返し実行させる繰り返し手段、を備えている。したがって、検出する動き画像領域が複数ある場合でも、正確に検出が可能となる。
 (17)本発明にかかる矩形動き画像領域決定方法は、行方向および列方向に画素が行列配置された表示領域のうち、その一部に表示される矩形動き画像領域を決定する矩形動き画像領域決定方法であって、前記表示領域を、所定数の画素で構成される単位ブロックに分割するとともに、各単位ブロックが動きが存在する動き単位ブロックと判断する動き単位ブロック判断ステップ、前記単位ブロックのうち、最上段に位置する各単位ブロックと同じ列に属する単位ブロックの集合を列ブロックとして定義し、各列ブロックに少なくとも1以上の動き単位ブロックが存在する場合には当該列ブロックを動き列ブロックとして決定する動き列ブロック決定ステップ、前記単位ブロックのうち、最左端段に位置する各単位ブロックと同じ行に属する単位ブロックの集合を行ブロックとして定義し、各行ブロックに少なくとも1以上の動き単位ブロックが存在する場合には、当該行ブロックを動き行ブロックとして決定する動き行ブロック決定ステップ、前記動き行ブロックおよび前記動き列ブロックの双方に属する単位ブロックで特定される矩形領域を矩形動き画像領域として決定する第1矩形動き画像領域決定ステップ、を備えている。
 このように、前記単位ブロック毎に動き単位ブロックか否か判断し、前記動き行ブロックおよび動き列ブロックを決定し、その双方に属する単位ブロックで特定される矩形領域を矩形動き画像領域として決定することにより、動き画像領域を決定することができる。
 (18)本発明にかかる矩形動き画像領域決定方法は、前記第1矩形動き画像領域決定ステップでは、決定した矩形領域について、さらに、前記動き列ブロック決定ステップ、および前記動き行ブロック決定ステップ、繰り返し実行する。したがって、検出する動き画像領域が複数ある場合でも、正確に検出が可能となる。
 (19)本発明にかかるスクロール領域判定装置は、画面内の判定対象領域がスクロール領域か否かを判定するスクロール領域判定装置であって、前記判定対象領域の各画素について、周辺画素との画素値の差に基づいて、エッジであるか否かを判断するエッジ画素判断手段、同一行または同一列に、前記エッジではない画素が所定数以上存在する行または列を文字隙間存在領域として判断する文字隙間存在領域判断手段、前記判定対象領域に対する前記文字隙間存在領域の割合に基づいてスクロール領域か否かを判断するスクロール領域判断手段、を備えている。
 したがって、文字を含む画像をスクロールしている場合を、確実に判断することができる。 
 (20)本発明にかかる境界決定装置は、1画面に存在する矩形領域の境界を決定する境界決定装置であって、判定対象画素における各画素の画素値に基づいて、エッジを構成する画素を判断するエッジ画素判断手段、行方向エッジを構成する画素を行方向エッジ画素として抽出し、前記行方向エッジの総数を各行について演算し、各行の前記行方向エッジの総数に基づいて、行方向の境界を決定する行方向境界決定手段、列方向エッジを構成する画素を列方向エッジ画素として抽出し、前記列方向エッジの総数を各列について演算し、各列の前記列方向エッジの総数に基づいて、列方向の境界を決定する列方向境界決定手段、前記決定した行方向境界および前記列方向境界を、前記矩形領域の境界として決定する矩形領域決定手段、を備えている。
 したがって行方向エッジおよび列方向エッジに基づいて境界を決定することができる
 (21)本発明にかかる境界決定装置は、前記エッジ画素判断手段が判定対象とする画素を決定する手段であって、以下の手段を有する荒領域決定手段を備えている。
 1)行方向および列方向に画素が行列配置された表示領域を、所定数の画素で構成される単位ブロックに分割するとともに、各単位ブロックが動きが存在する動き単位ブロックと判断する動き単位ブロック判断手段、
 2)前記単位ブロックのうち、最上段に位置する各単位ブロックと同じ列に属する単位ブロックの集合を列ブロックとして定義し、各列ブロックに少なくとも1以上の動き単位ブロックが存在する場合には当該列ブロックを動き列ブロックとして決定する動き列ブロック決定手段、
 3)前記単位ブロックのうち、最左端段に位置する各単位ブロックと同じ行に属する単位ブロックの集合を行ブロックとして定義し、各行ブロックに少なくとも1以上の動き単位ブロックが存在する場合には、当該行ブロックを動き行ブロックとして決定する動き行ブロック決定手段、
 4)前記動き行ブロックおよび前記動き列ブロックの双方に属する単位ブロックで特定される矩形領域を矩形動き画像領域として決定する第1矩形動き画像領域決定手段、
 5)前記矩形動き画像領域を構成する単位ブロックの内、外周の四辺を構成する単位ブロックに属する画素を判定対象として決定する対象画素決定手段。
 したがって、より迅速に境界判断が可能である。
 なお、本明細書において「画素値」とは輝度値はもちろん、RGB値など画像情報を特定する為の数値は全て含む。また、「矩形動き画像領域」とは、複数のフレーム間で画素値が異なり、動き画像領域を構成する矩形領域をいう。
 「列ブロック」とは、単位ブロックのうち、最上段に位置する各単位ブロックと同じ列に属する単位ブロックの集合をいう。本実施形態においては、最上段に位置する1の単位ブロックを特定して、列ブロックを決定したが、結果的に当該最上段に位置する1の単位ブロックを含むのであれば、最上段以外の行から特定するようにしてもよい。「行ブロック」とは、前記単位ブロックのうち、最左端段に位置する各単位ブロックと同じ行に属する単位ブロックの集合をいう。結果的に当該左端段に位置する1の単位ブロックを含むのであれば、特定の仕方は問わない。
  「第1矩形動き画像領域決定ステップ」、「第2矩形動き画像領域決定ステップ」は、実施形態では、動き画像領域決定処理(図3ステップS7)、境界決定処理(図3ステップS9)がそれぞれ該当する。
 また「列方向」とは各行が配置されている方向をいい、実施形態では、α方向をいう。「行方向エッジ」とは行方向に平行な方向にエッジをいい、「列方向エッジ」とは列方向に平行な方向にエッジをいう。
矩形動き画像領域決定装置1の機能ブロック図である。 矩形動き画像領域決定装置1を、CPUを用いて構成した場合のハード構成の一例である。 全体のフローチャートである。 動き画像領域110~112が存在する表示領域100を示す。 動きブロック決定処理のフローチャートである。 動きブロックを検出した結果を示す図である。 動き画像領域決定処理のフローチャートである。 動き列ブロックを示す図である。 動き画像領域決定処理のフローチャート(続き)である。 動き行ブロックを示す図である。 動き画像領域140を示す図である。 境界決定処理のフローチャートである。 1単位ブロック内の32*32画素を示す図である。 多数の動き画像領域が存在する表示領域200を示す。 検出された動き画像領域301~304を示す。 動き画像領域301から検出される動き画像領域311、312を示す。 境界決定処理のフローチャートである。 エッジ画素判断に用いるフィルタと演算式である。 時間軸方向の履歴による境界判断の説明の為の動画例である。 スクロール判定処理のフローチャートである。
 以下、本発明における実施形態について、図面を参照して説明する。
(1.1 機能ブロック)
 図1に、本発明の1実施形態にかかる矩形動き画像領域決定装置1の機能ブロック図を示す。矩形動き画像領域決定装置1は、行方向および列方向に画素が行列配置された表示領域のうち、その一部に表示される矩形動き画像領域を決定する装置であって、動き単位ブロック判断手段5、動き列ブロック決定手段7、動き行ブロック決定手段9、第1矩形動き画像領域決定手段11、繰り返し手段13、第2矩形動き画像領域決定手段14を備えている。
 動き単位ブロック判断手段5は、前記表示領域を、所定数の画素で構成される単位ブロックに分割するとともに、各単位ブロックが動きが存在する動き単位ブロックと判断する。動き列ブロック決定手段7は、前記単位ブロックのうち、最上段に位置する各単位ブロックと同じ列に属する単位ブロックの集合を列ブロックとして定義し、各列ブロックに少なくとも1以上の動き単位ブロックが存在する場合には当該列ブロックを動き列ブロックとして決定する。動き行ブロック決定手段9は、前記単位ブロックのうち、最左端段に位置する各単位ブロックと同じ行に属する単位ブロックの集合を行ブロックとして定義し、各行ブロックに少なくとも1以上の動き単位ブロックが存在する場合には、当該行ブロックを動き行ブロックとして決定する。第1矩形動き画像領域決定手段11は、前記動き行ブロックおよび前記動き列ブロックの双方に属する単位ブロックで特定される矩形領域を矩形動き画像領域として決定する。繰り返し手段13は、第1矩形動き画像領域決定手段11が決定した矩形動き画像領域について、動き列ブロック決定手段7、動き行ブロック決定手段9、および矩形動き画像領域決定手段11による処理を繰り返し実行させる。第2矩形動き画像領域決定手段14は、前記矩形動き画像領域を構成する単位ブロックの内、外周の四辺を構成する単位ブロックについて、これらの単位ブロック内の各画素に基づき、前記矩形動き画像領域内のエッジで定義される領域を前記矩形動き画像領域とする。
(1.2 ハードウェア構成)
 図2に矩形動き画像領域決定装置1のハードウェア構成を示す。矩形動き画像領域決定装置1は、CPU23、RAM25、フラッシュメモリ26を備えている。フラッシュメモリ26には、プログラム26pが記憶されている。プログラム26pには、後述するように、矩形動き画像領域決定処理を行う。RAM25は演算結果等を記憶する。フレームメモリ27は1画面の画像データを保持する。
 CPU23は、プログラム26Pに従い、メモリ27に記憶された表示領域を構成する画素値に基づき、動きの存在する画素で構成された動き画像領域か否かの判断を行い、結果をRAM25に記憶する。
(1.3 フローチャートの説明)
 図2に示すプログラム26Pによる処理について図3を用いて説明する。以下では、図4に示すように、モニタの1フレームである画像領域100に、3つの矩形動き画像領域100~112が存在する場合を例として説明する。
画像領域100は、行方向αと列方向βにマトリックス状に画素が配置されている。
 CPU23は、ブロック分割を行う(図3ステップS1)。本実施形態においては、32*32画素を1ブロックとして、図4に示す表示領域100を複数のブロックにマトリックス状に分割した。以下では、α方向にはn+1個、β方向にはm+1個のブロックに分割されたものとする。
 CPU23は全ブロックについて代表値を決定する(図3ステップS3)。代表値としては、1ブロック内の画素値の平均値、先頭の画素値、さらには当該値をそのまま用いるのではなく、CRCなどのハッシュ値を代表値としてもよい。また、平均値は、32*32*8bit画像では、18ビット長で表現可能であるが、上下の10ビットを切り捨てて、真ん中の8ビットのみ使用するというようにしてもよい。これにより、(n+1)*(m+1)個のブロック代表値がRAM25に記憶される。
 CPU23は、(n+1)*(m+1)個のブロックのうち、動きブロックを決定する(ステップS5)。動きブロック決定処理について図5を用いて説明する。
 CPU23は処理ブロック番号i,jを初期化する(図5ステップS11、S13)。ブロック(0,0)について前フレームの代表値と比較する(ステップS15)。本実施形態においては、時刻tと時刻t-1の代表値を比較した。CPU23は代表値の差分が閾値thbを超えるか否か判断し(ステップS17)、代表値の差分が閾値thbを越える場合は動きブロックと判断する(ステップS19)。一方、代表値の差分が閾値thbを越えない場合は非動きブロックと判断する(ステップS21)。
 CPU23は処理ブロック番号jが最終か否か判断する(ステップS23)。この場合、j=0で、最終でないので、処理ブロック番号jをインクリメントし(ステップS25)、ステップS15以下を繰り返す。ステップS23にて、処理ブロック番号jが最終であれば、ステップS27に進み、CPU23は、処理ブロック番号iが最終か否か判断する。この場合、最終でないので、処理ブロック番号iをインクリメントし(ステップS29)、ステップS13以下を繰り返す。ステップS27にて、処理ブロック番号iが最終であれば、処理を終了する。
 これにより、図6に示すように(n+1)*(m+1)個のブロックについて、動きブロックが決定される。この例では、ブロック(4,2)、(4,3)、(4,4)・・・が動きブロックとして決定されている。
 CPU23は、動き画像領域決定処理を行う(図3ステップS7)。動き画像領域決定処理の詳細について、図7,図9を用いて説明する。
 CPU23は、処理ブロック番号jを初期化する(図7ステップS31)。CPU23は、ブロック(0,0)が属する列のブロックに動きブロックが少なくとも1つ存在するか否か判断する(ステップS33)。この場合、図6に示すように、ブロック(0,0)およびその縦方向のブロック(1,0)~(m,0)には、動きブロックが存在しないので、かかる列は、非動き列と判断する(図7ステップS37)。CPU23は、加算記憶された仮動き列があるかどうか判断する(ステップS39)。この場合、存在しないので、ステップS46に進み、処理ブロック番号jが最終か否か判断する。この場合、j=0で最終ではないので、処理ブロック番号jをインクリメントし(ステップS47)、ステップS33以下を繰り返す。
 処理ブロック番号j=2では、ブロック(0,2)の縦方向のブロックには、動きブロックが存在する。したがって、CPU23は、この列は仮動き列として加算記憶する(ステップS35)。
 CPU23は、処理ブロック番号jが最終か否か判断する(ステップS46)。この場合、j=2で最終ではないので、処理ブロック番号jをインクリメントし(ステップS47)、ステップS33以下を繰り返す。
 処理ブロック番号j=8まで、ステップS35の処理が繰り返される。処理ブロック番号j=9では、ブロック(0,9)の列には、動きブロックが存在しない。したがって、CPU23は、当該列を非動き列であると判断する(ステップS37)。CPU23は、加算記憶された仮動き列が存在するか否か判断し(ステップS39)、存在する場合には、隣接するそれらの集合が、閾値thwを超える幅を有するか否か判断する(ステップS41)。本実施形態においては、閾値thwを2ブロック以上とした。この場合、加算記憶された仮動き列がブロック(0,2)~(0,8)まで存在するので、前記閾値thwを超えているので、仮動き列を動き列とする(ステップS45)。
 CPU23は、処理ブロック番号jが最終か否か判断する(ステップS46)。
 処理ブロック番号j=10では、ブロック(0,10)の列には、動きブロックが存在しない。したがって、CPU23は、当該列を非動き列であると判断する(ステップS37)。CPU23は、検出済みの仮動き列が存在するか否か判断し(ステップS39)、この場合、存在しないので、CPU23は、処理ブロック番号jが最終か否か判断する(ステップS46)。
 以下、j=n-7まで、非動き列と判断がなされる。処理ブロック番号j=n-6には、動きブロック(m-3,n-6)が存在する。したがって、CPU23は、仮動き列として加算記憶する(ステップS35)。
 処理ブロック番号j=n-5では、ブロック(0,n-5)の列には、動きブロックが存在しない。したがって、CPU23は、当該列を非動き列であると判断する(ステップS37)。CPU23は、検出済みの仮動き列が存在するか否か判断し(ステップS39)、存在する場合には、隣接するそれらの集合が、閾値thwを超える幅を有するか否か判断する(ステップS41)。本実施形態においては、閾値thwを2ブロック以上としたので、仮動き列の幅が前記閾値thwを超えていないので、仮動き列を非動き列とする(ステップS43)。これにより、マウスなどの画像領域を誤って動き画像領域として認定することを防止することができる。
 以下同様にして、行方向αについて、順次動きブロックが存在する列か否かを1列ずつ判断している。
 なお、最終列であるブロック(0,n)の列が仮動き列である場合もある。この場合、ステップS49にて、加算記憶された仮動き列が存在するか否か判断し、存在する場合には、ステップS41以下の処理を実行する。
 図8に、検出後の動き列を示す。この場合、領域121が動き列として決定される。これに対して、動きブロック(6,n-3),(m-3,n-6)が属する領域122,123は矢印α方向に、閾値thw以上の幅を有していないので、動き列としては決定されない。
 つぎに、CPU23は、処理ブロック番号iを初期化する(図9ステップS51)。CPU23は、ブロック(0,0)の行に動きブロックが少なくとも1つ存在するか否か判断する(ステップS53)。この場合、図6に示すように、ブロック(0,0)およびその横方向のブロック(0,1)~(0,n)には、動きブロックが存在しないので、かかる行は、非動き行と判断する(ステップS57)。CPU23は、加算記憶された動き行があるかどうか判断する(ステップS59)。この場合、検出済みの動き行が存在しないので、ステップS66に進み、処理ブロック番号iが最終か否か判断する。この場合、i=0で、最終ではないので、処理ブロック番号iをインクリメントし(ステップS68)、ステップS53以下を繰り返す。
 処理ブロック番号i=4では、ブロック(4,0)の行には、動きブロックが存在する。したがって、CPU23は、この行を仮動き行として加算記憶する(ステップS55)。
 以下同様にして、i=8まで、ブロック(i,0)の行には動きブロックが存在する動き行であるとの判断がなされる。i=9にて、ブロック(i,0)の行には動きブロックが存在しないので、当該行は非動き行であると判断される(ステップS57)。CPU23は、加算記憶された動き行があるか否か判断する(ステップS59)。この場合、加算記憶された動き行があるので、それらの集合が、閾値thwを超える幅を有するか否か判断する(ステップS61)。本実施形態においては、閾値thwを2ブロック以上とした。この場合、検出済みの動き行がブロック(4,0)~(8,0)まで存在するので、前記閾値thwを超えているので、仮動き行を動き行とする(ステップS65)。
 以下同様にして、列方向βについて、順次動きブロックが存在する列か否かを1行ずつ判断する。ステップS69の意義については、ステップS49と同じであるので説明は省略する。
 図10に検出後の動き行を示す。この場合、領域131が動き行として決定される。動きブロック(6,n-3)は、領域131に属している。これに対して、動きブロック(m-3,n-6)が属する領域132は、矢印β方向に閾値thw以上の幅を有していないので、動き行としては決定されない。
 CPU23は、動き列と動き行の双方に属するブロックを動き画像領域として決定する(図9ステップS70)。この場合、図11に示す領域121と領域131の重複する領域140に属するブロックが動き画像領域として決定される。図6の動きブロックと比較すると、動きブロック(6,n-3),(m-3,n-6)が排除される一方、ブロック(4,5)などが動き画像領域として決定されている。このようにして取りこぼしを周辺ブロックとの関係で防ぐことができる。
 CPU23は、境界決定処理を行う(図3ステップS9)。図11に示す領域140については、32*32画素で構成されたブロックにおける動き画像領域の境界が得られている。ステップS9の処理により、図13に示すように、1画素単位での動き画像領域の境界150を得ることができる。ステップS9の詳細について図12を用いて説明する。
 CPU23は、上側ブロックを抽出する(図12ステップS80)。この場合、図13に示すブロック(4,2)~(4,8)の計7つのブロックが抽出される。CPU23は、処理行番号Pを初期化し(ステップS81)、抽出したブロックのP行目の画素を全て抽出するとともに、その代表値を演算する(ステップS83)。この場合、ブロック(4,2)の0行目の32画素、ブロック(4,3)の0行目の32画素・・・と7*32画素が抽出され、その代表値が演算される。本実施形態においては、代表値は抽出した画素の平均値とした。
 つぎにCPU23は、抽出したブロックの処理行番号P+1行目の画素を全て抽出するとともに、その代表値を演算する(ステップS85)。この場合、ブロック(4,2)の1行目の32画素、ブロック(4,3)の1行目の32画素・・・と7*32画素が抽出され、その代表値が演算される。
 CPU23は、ステップS83で求めた代表値とステップS85で求めた代表値が異なるか否か判断する(ステップS87)。ステップS87にて両者が異なる場合には、画素(P,0)の行が境界であると判断する(ステップS93)。ステップS87にて両者が異ならない場合には、処理行番号Pをインクリメントし(ステップS89)、抽出ブロックの最終画素(この場合、32画素)となるまでステップS83以下を繰り返す(ステップS91)。最終画素でもステップS87にて両者が異ならない場合は、抽出したブロックの端部が境界であると判断する(ステップS95)。
 図12においては、上部のブロックにおける1画素単位の境界を抽出する場合について説明したが、下部のブロックについても同様である。
 このように、外周のブロックについて、上部、下部であれば横方向に1行分画素を抽出して、その代表値を隣接する行と比較することにより、ブロック内における1画素単位の境界を取得することができる。
 なお、左右の境界については、縦方向に1列分画素を抽出して、その代表値を隣接する列と比較すればよい。
 本装置においては、動き画像領域を自動的に検出することができる。また、その判断も数フレームで検出可能である。したがって、モニタ上で動画領域自体が動的に変動する場合であっても、ほぼリアルタイムで動画領域を検出できる。
(2.第2の実施形態)
 上記実施形態では、検出対象が1つの場合を例として説明した。第2実施形態では、決定した動き画像領域についてさらに、図3ステップS7の処理を繰り返すことにより、図14に示すような動き画像領域201~207が複数存在する場合でも、動き画像領域を検出することができる。
 図3ステップS7の処理を一度行うと、図15に示すような、動き画像領域301~304が決定される。領域207については閾値thw以上の幅を有しないとして動き画像領域としては検出されない。
 この状態では、動き領域301には、本来、動き画像領域でない領域も含まれている。かかる場合があるので、CPU23は、領域301~304をそれぞれ全体の画像領域とみなして、再度、動き画像領域の検出を行う。これにより、例えば、領域301の場合、ブロック座標(y1,x1)(y3,x11)で定義される領域311と、ブロック座標(y1,x12)(y3,x13)で定義される領域312が検出される。他の領域302~304についても同様である。
 領域311については、同様にして領域311を全体の画像領域とみなして再度、動き画像領域の検出を行う。これにより、ブロック座標(y1,x1)(y11,x11)で定義される領域が検出される。領域312についても同様である。
 かかる繰り返し検出は、それ以上分割できなくなるまで行ってもよいし、予め繰り返し検出の上限回数を決めておいてもよい。
(3.第3の実施形態)
 第1,第2の実施形態においては、ブロック単位で検出した後、外周の四辺を構成する単位ブロックについて、行方向であれば各行について代表値を求めて、隣接する行と異なる場合に、境界であると判断している。列方向についても同様である。かかる検出については、以下のように境界判断をすることもできる。図17を用いて説明する。
 CPU23は、上側ブロックのうち端部を除いたブロックを抽出する(図17ステップS100)。この場合、図13に示すブロック(4,3)~(4,7)の計5つのブロックが抽出される。このように端部を除くのは、両端部のブロックには一部エッジがない可能性があるからである。ただし、かかる端部ブロックについても採用するようにしてもよい。
 CPU23は、処理行番号r、処理画素番号gを初期化し(図17ステップS101、S102)、行番号”0”の抽出したブロックのg番目の画素が横エッジ画素(行方向エッジ)であるか否か判断する(ステップS103)。横エッジ画素か否かについては隣接する画素との輝度差に基づいて決定すればよい。本実施形態においては、図18Aに示すようなフィルタおよび演算式を採用した。
 CPU23は、P番目の画素が横エッジ画素であると判断すると、総数Etをインクリメントする(図17ステップS105)。CPU23は1ライン全て終了したか否か判断し(ステップS107)、終了していなければ、処理画素番号gをインクリメントし(ステップS109)、ステップS103?ステップS107を繰り返す。
 CPU23は、1ラインの全画素について、横エッジか否か判断すると、そのラインにおける横エッジの総数Etがあらかじめ設定した閾値thsより大きいか否か判断する(ステップS111)。これは、動画領域内にも、輪郭として横エッジの画素は存在するので、それを排除するためである。CPU23は横エッジの総数Etが閾値thsより大きい場合には、それを境界とする(ステップS113)。これにより、横エッジの集合が閾値thsを超える境界を得ることができる。
なお、閾値thsは固定閾値でもよいし、また、あらかじめ比率を設定しておき、検出した領域の大きさ(ブロック数)に応じて、計算するようにしてもよい。
 CPU23は、ステップS111にて、”NO"の場合は、全行終了したか否か判断する(ステップS113)。全行終了していなければ、CPU23は処理行番号rをインクリメントと、ステップS102~ステップS111を繰り返す。
 このようにして、1画素単位で、境界を判断することができる。下部のブロックにおける1画素単位の境界についても同様である。
 左右の境界については、最右段および最左段に位置する単位ブロックについて、同様に、図18Bに示すフィルタおよび演算式を用いて、縦エッジ(列方向エッジ)を検出すればよい。
 本実施形態においては、縦エッジおよび横エッジの総数で境界判断を行っている。したがって、乱雑な背景上の動画領域であっても検出が可能である。また、検出精度向上、動画領域の揺れが低減する。
 本実施形態においては、境界を求める場合に、図11で求めたブロックのうち、端部を除いた全ブロックの画素を採用したが、さらにその一部で判断するようにしてもよい。
 本実施形態においては、閾値thsとの比較は1ラインの総計としたが、エッジ画素が所定数以上連続する場合に、境界であると判断するようにしてもよい。さらに、自然画においてもエッジ画像が存在する場合もある。したがって、一定数以上連続していないエッジについては、総数の計算から除去するようにしてもよい。
 本実施形態においては、前記矩形領域を決定し、その外周にあたるブロックについての1画素単位の境界を求める場合について適用したが、動き推定一般、さらに他の分野にも適用可能である。また、1画素単位でなく複数画素単位(例えば2*2画素単位)の境界を求めるようにしてもよい。
 本実施形態においては、エッジ画素を抽出して境界を決定するようにしたが、対象のブロック内の各画素について、異なるフレーム間で動きベクトルがある画素か否か判断し、動きベクトルが検出できる画素と、検出できない画素の境目が境界であると判断するようにしてもよい。
 なお、特定のフレームでは、動画領域と背景との間に輝度差がほとんどない場合もある。たとえば、図19Aに示すフレームtでは、背景と動画領域との境界部分に輝度差がほとんどない。このようなフレームで1のフレームだけでは境界検出ができないおそれがある。そこで、各フレームの境界を順次記憶しておき、あるフレームでは境界を検出できない場合、蓄積してる境界を採用するようにしてもよい。本実施形態においては、蓄積するフレーム数としては、十数フレーム分とした。
 本実施形態においては、あらかじめ、複数画素で構成されたブロック単位での検出(以下、荒処理という)を行う場合について説明したが、かかる処理なしに矩形の境界を判定することもできる。
 さらに、複数のフレームではなく、静止画における矩形の境界決定装置として適用可能である。
(4.第4の実施形態)
 上記で説明したフレーム間の画素情報に基づいて動画領域か否か判断すると、特定の矩形領域でテキストデータをスクロールする場合にも、誤って動画領域と判断するおそれがある。以下に示すように、スクロール判定を行い、スクロール処理である場合には、境界判断をしないようにしてもよい。
 テキストデータについては、横書きの場合、文字と文字の間に行間が存在する。すなわち、1ラインごとに見ていくと、文字が記載される領域にはエッジ画素が多数存在し、行間になると全くエッジ画素が存在しないという特質を有する。したがって、かかる特質が存在するかで、動画領域か否かを区別することができる。
 CPU23は、対象行番号Qおよび合致行数kを初期化し(図20ステップS121)、抽出したブロックのQ行目の総エッジ画素数Enqを計測する(ステップS123)。エッジ画素か否かについては周りの画素との輝度差に基づいて決定すればよい。
 CPU23は、総エッジ画素数Enqが閾値thmよりも大きいとともに、直前の総エッジ画素数En(q-1)が、閾値thnよりも小さいか否か判断する(ステップS125)。CPU23はステップS125での判断が”yes”である場合には、合致行数kをインクリメントする(ステップS127)。
 CPU23は、すべての行について判断済みか否かを判断する(ステップS131)。すべての行について判断済みでない場合には、CPU23は処理行番号Qをインクリメントし(ステップS133)、ステップS123?ステップS127を繰り返す。
 CPU23は、ステップS131にてすべての行について判断済みと判断すると、前記合致行数kが閾値thgよりも大きいか判断する(ステップS135)。合致行数kが閾値thgよりも大きい場合には、スクロールによる動きであると判断する(ステップS137)。
 かかるスクロール判定は、図3ステップS7とステップS9の間で行い、スクロール判定であると判断した場合には、ステップS9の処理を行わないようにすればよい。
 これにより、ブラウザ内の文字をスクロールして動かす場合に、その領域が動画と判定されることを防ぐことができる。
 なお、前記スクロール判定は、当該領域における全行でなく、一部の行で判断してもよい。
 本実施形態においては、テキストデータが横書きの場合について説明したが、縦書きであっても同様に判定可能である。なお、スクロール判定はこのやり方に限定されず、周知のスクロール判定であってもよい。
 また、動画領域判断におけるスクロール判定に適用した場合について説明したが、スクロール判定一般に適用可能である。
 また、スクロールでなくとも、特定領域がテキスト領域であるか否かが判定できる。この特定領域は動画領域検出による動画領域に限らず静止画・動画を問わず画像内の特定の領域であってもよい。
 (5.他の実施形態)
 本実施形態においては、画素値として輝度値を採用したが、RGBの値などであってもよい。
 本実施形態においては、図5ステップS15において、第tフレームと第t+1フレームで動き画像領域を構成するブロックか否かを判断するようにしたが、時間的なズレがある複数のフレームであればこれに限定されず、例えば、第tフレームと第t+2フレーム間で動きがあるかを判断するようにしてもよい。また、2つのフレームで比較するのでなく、さらに前後フレームを加えて、例えば、16フレームを採用してもよい。
 本実施形態においては、図3ステップS9の境界線決定処理は任意であり、画素単位の境界線が不要な場合には行わなくてもよい。また,境界線決定処理においては、外周に位置する全ブロックについて1行全てまたは1列全ての画素値を全て用いたが、一部間引き処理、または代表値を採用することもできる。また、全てのブロックではなく、一部のブロックで判断するようにしてもよい。
また、図5ステップS15のように、過去の同位置の代表値を保持しておき比較するようにしてもよい。
 本実施形態においては、1ブロックを32*32画素で構成したが、これに限定されない。
 画素の平均値やハッシュ値でなく、いずれかの画素の値それ自体(例えば当該ブロックの左上隅の画素値)を用いる場合、図3ステップS9の処理としては、その外周に1ブロック分、配置して、境界を求めるようにしてもよい。例えば、ステップS7の処理にて、7*5個のブロックを動き画像領域として検出した場合、その周りに1ブロック追加した9*7個のブロックで、ステップS9の処理を行う。
 本実施形態にかかる矩形動き画像領域決定装置を含むモニタまたはセットトップボックスとして構成することもできる。またこのセットトップボックスは、入力データの出力先モニタを切り替えるための切り替えハブとして構成してもよい。
 上記各実施形態においては、1画素精度の矩形動き画像領域の検出ができる。さらに、複数の矩形動き画像領域の判別も可能である。また、幅の小さな小領域動きの除去ができる。たとえばマウスポインタなど擬似動きの対策が可能である。また、画像内の動き領域、静止領域に対して、これらを区別できるので、最適な制御が可能である。
 上記実施形態においては、動き単位ブロックか否かの判断について、前記表示領域を、所定数の画素で構成される単位ブロックに分割するとともに、各単位ブロックに属する前記所定数の画素の画素値に基づいて、各単位ブロックの代表画素値を演算し、前記各単位ブロックについて、比較対象のフレームの同じ位置の単位ブロックの代表値と比較し、前記代表値が閾値を超える場合には、動きが存在する動き単位ブロックと判断するようにした。しかし、これに限定されず、各単位ブロックが動きが存在する動き単位ブロックか否かを判断できる手法を採用してもよい。たとえば、既に説明したように、所定数のフレームの同一ブロックの代表値を加算したもの同士の比較など、周知の動き単位ブロック判断ステップの採用が可能である。
 上記実施形態においては、図1に示す機能を実現するために、CPU23を用い、ソフトウェアによってこれを実現している。しかし、その一部もしくは全てを、ロジック回路などのハードウェアによって実現してもよい。なお、プログラムの一部の処理を、オペレーティングシステム(OS)にさせるようにしてもよい。
 23   CPU
 25   RAM
 26   フラッシュメモリ

Claims (21)

  1.  行方向および列方向に画素が行列配置された表示領域のうち、その一部に表示される矩形動き画像領域を決定する矩形動き画像領域決定方法であって、
     前記表示領域を、所定数の画素で構成される単位ブロックに分割するとともに、各単位ブロックが、動きが存在する動き単位ブロックであるか否か判断する動き単位ブロック判断ステップ、
     前記単位ブロックのうち、最上段に位置する各単位ブロックと同じ列に属する単位ブロックの集合を列ブロックとして定義し、各列ブロックに少なくとも1以上の動き単位ブロックが存在する場合には当該列ブロックを動き列ブロックとして決定する動き列ブロック決定ステップ、
     前記単位ブロックのうち、最左端段に位置する各単位ブロックと同じ行に属する単位ブロックの集合を行ブロックとして定義し、各行ブロックに少なくとも1以上の動き単位ブロックが存在する場合には、当該行ブロックを動き行ブロックとして決定する動き行ブロック決定ステップ、
     前記動き行ブロックおよび前記動き列ブロックの双方に属する単位ブロックで特定される矩形領域を矩形動き画像領域として決定する第1矩形動き画像領域決定ステップ、
     前記矩形動き画像領域を構成する単位ブロックの内、外周の四辺を構成する単位ブロックについて、これらの単位ブロック内の各画素に基づき、前記矩形動き画像領域内のエッジで定義される領域を前記矩形動き画像領域とする第2矩形動き画像領域決定ステップ、
     を備えた矩形動き画像領域決定方法。
  2.  請求項1の矩形動き画像領域決定方法において、
     前記第2矩形動き画像領域決定ステップでは、前記外周の四辺を構成する単位ブロックについて、これらの単位ブロック内の行方向については、各行の代表画素値が異なる行を、列方向については各列の代表画素値が異なる列を、前記矩形動き画像領域の境界として決定すること、
     を特徴とする矩形動き画像領域決定方法。
  3.  請求項1の矩形動き画像領域決定方法において、
     前記第2矩形動き画像領域決定ステップでは、前記外周の四辺を構成する単位ブロックについて、これらの単位ブロック内の各画素について、異なるフレーム間で動きが存在する動き画素か否かを判断して、前記矩形動き画像領域の境界を決定すること、
     を特徴とする矩形動き画像領域決定方法。
  4.  請求項1の矩形動き画像領域決定方法において、
     前記第2矩形動き画像領域決定ステップでは、
     前記外周の四辺を構成する単位ブロックについて、これらの単位ブロック内の各画素について、行方向エッジおよび列方向エッジを構成する画素を抽出し、各行についての行方向エッジを構成する画素の総数、各列について列方向エッジを構成する画素の総数に基づき前記矩形動き画像領域の境界を決定すること、
     を特徴とする矩形動き画像領域決定方法。
  5.  請求項1~4のいずれかの矩形動き画像領域決定方法において、
     前記第2矩形動き画像領域決定ステップの前に、決定した矩形動き画像領域がスクロールによってフレーム間で画像が異なるか否かを判定するスクロール該当判定をし、スクロールであると判断した場合には、前記第2矩形動き画像領域決定ステップを行わないこと、
     を特徴とする矩形動き画像領域決定方法。
  6.  請求項5の矩形動き画像領域決定方法において、
     前記スクロール該当判定は、
     決定した矩形動き画像領域の各画素について、周辺画素との画素値の差に基づいて、エッジであるか否かを判断し、
     前記エッジではない画素が行方向または列方向に所定数以上存在する行または列について、文字隙間存在領域として認識し、
     前記決定した矩形動き画像領域に対する前記文字隙間存在領域の割合に基づいてスクロール該当判定をすること、
     を特徴とする矩形動き画像領域決定方法。
  7.  請求項1~6のいずれかの矩形動き画像領域決定方法において、
     前記第1矩形動き画像領域決定ステップにて決定した矩形動き画像領域について、第2矩形動き画像領域決定ステップの前に、
     前記動き列ブロック決定ステップ、前記動き行ブロック決定ステップ、および前記第1矩形動き画像領域決定ステップを繰り返し実行すること、
     を特徴とする矩形動き画像領域決定方法。
  8.  行方向および列方向に画素が行列配置された表示領域のうち、その一部に表示される矩形動き画像領域を決定する矩形動き画像領域決定装置であって、
     前記表示領域を、所定数の画素で構成される単位ブロックに分割するとともに、各単位ブロックが、動きが存在する動き単位ブロックであるか否か判断する動き単位ブロック判断手段、
     前記単位ブロックのうち、最上段に位置する各単位ブロックと同じ列に属する単位ブロックの集合を列ブロックとして定義し、各列ブロックに少なくとも1以上の動き単位ブロックが存在する場合には当該列ブロックを動き列ブロックとして決定する動き列ブロック決定手段、
     前記単位ブロックのうち、最左端段に位置する各単位ブロックと同じ行に属する単位ブロックの集合を行ブロックとして定義し、各行ブロックに少なくとも1以上の動き単位ブロックが存在する場合には、当該行ブロックを動き行ブロックとして決定する動き行ブロック決定手段、
     前記動き行ブロックおよび前記動き列ブロックの双方に属する単位ブロックで特定される矩形領域を矩形動き画像領域として決定する第1矩形動き画像領域決定手段、
     前記矩形動き画像領域を構成する単位ブロックの内、外周の四辺を構成する単位ブロックについて、これらの単位ブロック内の各画素に基づき、前記矩形動き画像領域内のエッジで定義される領域を前記矩形動き画像領域とする第2矩形動き画像領域決定手段、
     を備えた矩形動き画像領域決定装置。
  9.  請求項8の矩形動き画像領域決定装置において、
     前記第2矩形動き画像領域決定手段は、外周の四辺を構成する単位ブロックについて、これらの単位ブロック内の行方向については、各行の代表画素値が異なる行を、列方向については各列の代表画素値が異なる列を、前記矩形動き画像領域の境界として決定すること、
     を特徴とする矩形動き画像領域決定装置。
  10.  請求項8の矩形動き画像領域決定装置において、
     前記第2矩形動き画像領域決定手段は、外周の四辺を構成する単位ブロックについて、これらの単位ブロック内の各画素について、異なるフレーム間で動きが存在する動き画素か否かを判断して、前記矩形動き画像領域の境界を決定すること、
     を特徴とする矩形動き画像領域決定装置。
  11.  請求項8の矩形動き画像領域決定装置において、
     前記第2矩形動き画像領域決定手段は、外周の四辺を構成する単位ブロックについて、これらの単位ブロック内の各画素について、行方向および列方向エッジを構成する画素を抽出し、各行についての行方向の総数、各列について列方向エッジを構成する画素の総数に基づき前記矩形動き画像領域の境界を決定すること、
     を特徴とする矩形動き画像領域決定装置。
  12.  請求項8~11のいずれかの矩形動き画像領域決定装置において、
     前記第1矩形動き画像領域決定手段が決定した矩形動き画像領域について、前記動き列ブロック決定手段、前記動き行ブロック決定手段、および前記矩形動き画像領域決定手段による処理を繰り返し実行させる繰り返し手段、
     を備えたことを特徴とする矩形動き画像領域決定装置。
  13.  請求項8~12のいずれかの矩形動き画像領域決定装置を含むモニタ。
  14.  請求項8~12のいずれかの矩形動き画像領域決定装置を含むセットトップボックス。
  15.  請求項14のセットトップボックスは、入力データの出力先モニタを切り替えるための切り替えハブであること、
     を特徴とするもの。
  16.  行方向および列方向に画素が行列配置された表示領域のうち、その一部に表示される矩形動き画像領域を決定する矩形動き画像領域決定処理をコンピュータに実行させるためのプログラムであって、
     前記コンピュータは下記手段として構成させる矩形動き画像領域決定プログラム。
     前記表示領域を、所定数の画素で構成される単位ブロックに分割するとともに、各単位ブロックが、動きが存在する動き単位ブロックであるか否か判断する動き単位ブロック判断ステップ、
     前記単位ブロックのうち、最上段に位置する各単位ブロックと同じ列に属する単位ブロックの集合を列ブロックとして定義し、各列ブロックに少なくとも1以上の動き単位ブロックが存在する場合には当該列ブロックを動き列ブロックとして決定する動き列ブロック決定手段、
     前記単位ブロックのうち、最左端段に位置する各単位ブロックと同じ行に属する単位ブロックの集合を行ブロックとして定義し、各行ブロックに少なくとも1以上の動き単位ブロックが存在する場合には、当該行ブロックを動き行ブロックとして決定する動き行ブロック決定手段、
     前記動き行ブロックおよび前記動き列ブロックの双方に属する単位ブロックで特定される矩形領域を矩形動き画像領域として決定する第1矩形動き画像領域決定手段、
     前記矩形動き画像領域を構成する単位ブロックの内、外周の四辺を構成する単位ブロックについて、これらの単位ブロック内の各画素に基づき、前記矩形動き画像領域内のエッジで定義される領域を前記矩形動き画像領域とする第2矩形動き画像領域決定手段。
  17.  行方向および列方向に画素が行列配置された表示領域のうち、その一部に表示される矩形動き画像領域を決定する矩形動き画像領域決定方法であって、
     前記表示領域を、所定数の画素で構成される単位ブロックに分割するとともに、各単位ブロックが、動きが存在する動き単位ブロックであるか否か判断する動き単位ブロック判断ステップ、
     前記単位ブロックのうち、最上段に位置する各単位ブロックと同じ列に属する単位ブロックの集合を列ブロックとして定義し、各列ブロックに少なくとも1以上の動き単位ブロックが存在する場合には当該列ブロックを動き列ブロックとして決定する動き列ブロック決定ステップ、
     前記単位ブロックのうち、最左端段に位置する各単位ブロックと同じ行に属する単位ブロックの集合を行ブロックとして定義し、各行ブロックに少なくとも1以上の動き単位ブロックが存在する場合には、当該行ブロックを動き行ブロックとして決定する動き行ブロック決定ステップ、
     前記動き行ブロックおよび前記動き列ブロックの双方に属する単位ブロックで特定される矩形領域を矩形動き画像領域として決定する第1矩形動き画像領域決定ステップ、
     を備えた矩形動き画像領域決定方法。
  18.  請求項17の矩形動き画像領域決定方法において、
     前記第1矩形動き画像領域決定ステップでは、決定した矩形領域について、さらに、
     前記動き列ブロック決定ステップ、および前記動き行ブロック決定ステップ、繰り返し実行すること、
     を特徴とする矩形動き画像領域決定方法。
  19.  画面内の判定対象領域がスクロール領域か否かを判定するスクロール領域判定装置であって、
     前記判定対象領域の各画素について、周辺画素との画素値の差に基づいて、エッジであるか否かを判断するエッジ画素判断手段、
     同一行または同一列に、前記エッジではない画素が所定数以上存在する行または列を文字隙間存在領域として判断する文字隙間存在領域判断手段、
     前記判定対象領域に対する前記文字隙間存在領域の割合に基づいてスクロール領域か否かを判断するスクロール領域判断手段、
     を備えたことを特徴とするスクロール領域判定装置。
  20.  1画面に存在する矩形領域の境界を決定する境界決定装置であって、
     判定対象画素における各画素の画素値に基づいて、エッジを構成する画素を判断するエッジ画素判断手段、
     行方向エッジを構成する画素を行方向エッジ画素として抽出し、前記行方向エッジの総数を各行について演算し、各行の前記行方向エッジの総数に基づいて、行方向の境界を決定する行方向境界決定手段、
     列方向エッジを構成する画素を列方向エッジ画素として抽出し、前記列方向エッジの総数を各列について演算し、各列の前記列方向エッジの総数に基づいて、列方向の境界を決定する列方向境界決定手段、
     前記決定した行方向境界および前記列方向境界を、前記矩形領域の境界として決定する矩形領域決定手段、
     を備えたことを特徴とする境界決定装置。
  21.  請求項20の境界決定装置であって、
     前記エッジ画素判断手段が判定対象とする画素を決定する手段であって、以下の手段を有する荒領域決定手段を備えていること、
     1)行方向および列方向に画素が行列配置された表示領域を、所定数の画素で構成される単位ブロックに分割するとともに、各単位ブロックが動きが存在する動き単位ブロックと判断する動き単位ブロック判断手段、
     2)前記単位ブロックのうち、最上段に位置する各単位ブロックと同じ列に属する単位ブロックの集合を列ブロックとして定義し、各列ブロックに少なくとも1以上の動き単位ブロックが存在する場合には当該列ブロックを動き列ブロックとして決定する動き列ブロック決定手段、
     3)前記単位ブロックのうち、最左端段に位置する各単位ブロックと同じ行に属する単位ブロックの集合を行ブロックとして定義し、各行ブロックに少なくとも1以上の動き単位ブロックが存在する場合には、当該行ブロックを動き行ブロックとして決定する動き行ブロック決定手段、
     4)前記動き行ブロックおよび前記動き列ブロックの双方に属する単位ブロックで特定される矩形領域を矩形動き画像領域として決定する第1矩形動き画像領域決定手段、
     5)前記矩形動き画像領域を構成する単位ブロックの内、外周の四辺を構成する単位ブロックに属する画素を判定対象として決定する対象画素決定手段、 を特徴とする境界決定装置。
PCT/JP2011/077755 2011-06-14 2011-12-01 動き画像領域判定装置またはその方法 WO2012172706A1 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
CN201180071038.2A CN103548055B (zh) 2011-06-14 2011-12-01 运动图像区域判定装置或其方法
EP11867827.5A EP2722817B1 (en) 2011-06-14 2011-12-01 Motion image region identification device and method thereof
RU2013154986/08A RU2592457C2 (ru) 2011-06-14 2011-12-01 Устройство для идентификации области движущегося изображения и способ
ES11867827T ES2710860T3 (es) 2011-06-14 2011-12-01 Dispositivo de identificación de región de imagen en movimiento y método del mismo
AU2011371064A AU2011371064B2 (en) 2011-06-14 2011-12-01 Motion image region identification device and method thereof
US14/126,353 US9311557B2 (en) 2011-06-14 2011-12-01 Motion image region identification device and method thereof

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2011131926 2011-06-14
JP2011-131926 2011-06-14
JP2011-232571 2011-10-24
JP2011232571A JP4980486B1 (ja) 2011-06-14 2011-10-24 動き画像領域判定装置またはその方法

Publications (1)

Publication Number Publication Date
WO2012172706A1 true WO2012172706A1 (ja) 2012-12-20

Family

ID=46678910

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2011/077755 WO2012172706A1 (ja) 2011-06-14 2011-12-01 動き画像領域判定装置またはその方法

Country Status (8)

Country Link
US (1) US9311557B2 (ja)
EP (1) EP2722817B1 (ja)
JP (2) JP4980486B1 (ja)
CN (1) CN103548055B (ja)
AU (1) AU2011371064B2 (ja)
ES (1) ES2710860T3 (ja)
RU (1) RU2592457C2 (ja)
WO (1) WO2012172706A1 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5192597B1 (ja) * 2012-04-03 2013-05-08 株式会社ナナオ 動き画像領域判定装置またはその方法
JP5542981B1 (ja) 2013-02-06 2014-07-09 Eizo株式会社 画像処理装置、フレームレートコントロール処理判定装置またはその方法
EP3564917B1 (en) * 2018-05-04 2020-07-01 Axis AB A method for detecting motion in a video sequence
CN110278484B (zh) * 2019-05-15 2022-01-25 北京达佳互联信息技术有限公司 视频配乐方法、装置、电子设备及存储介质
KR20210065447A (ko) 2019-11-27 2021-06-04 삼성전자주식회사 전자장치와 그의 제어방법, 및 기록매체
CN113691721B (zh) * 2021-07-28 2023-07-18 浙江大华技术股份有限公司 一种缩时摄影视频的合成方法、装置、计算机设备和介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07334616A (ja) * 1994-06-06 1995-12-22 Sharp Corp 画像分類装置
JPH0879767A (ja) * 1994-07-05 1996-03-22 Ricoh Co Ltd 動きベクトル符号化および復号化方式
JP2001076161A (ja) * 1999-09-02 2001-03-23 Canon Inc 画像処理方法及び装置並びに記憶媒体
JP2004157818A (ja) * 2002-11-07 2004-06-03 Panasonic Communications Co Ltd 画像処理装置及び画像処理方法
JP2006024147A (ja) * 2004-07-09 2006-01-26 Foundation For The Promotion Of Industrial Science 背景画像生成方法及び装置
JP2009064199A (ja) * 2007-09-05 2009-03-26 Casio Comput Co Ltd ジェスチャー認識装置及びジェスチャー認識方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5715325A (en) * 1995-08-30 1998-02-03 Siemens Corporate Research, Inc. Apparatus and method for detecting a face in a video image
JP3873554B2 (ja) * 1999-12-27 2007-01-24 株式会社日立製作所 監視装置、監視プログラムが記録された記録媒体
RU2315357C2 (ru) * 2003-11-27 2008-01-20 Корпорация "САМСУНГ ЭЛЕКТРОНИКС Ко., Лтд." Способ детектирования объекта
JP4416607B2 (ja) * 2004-09-08 2010-02-17 富士通株式会社 移動体画像抽出方法
CN101477687B (zh) * 2009-01-22 2011-05-04 上海交通大学 复杂背景下的棋盘格角点检测方法
US8411738B2 (en) * 2009-03-12 2013-04-02 Samsung Electronics Co., Ltd. System and method for identification of vertical scrolling regions in digital video
CN101854466B (zh) * 2010-05-13 2012-05-30 北京英泰智软件技术发展有限公司 一种运动区域探测方法及装置
CN101859440A (zh) * 2010-05-31 2010-10-13 浙江捷尚视觉科技有限公司 基于块的运动区域检测方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07334616A (ja) * 1994-06-06 1995-12-22 Sharp Corp 画像分類装置
JPH0879767A (ja) * 1994-07-05 1996-03-22 Ricoh Co Ltd 動きベクトル符号化および復号化方式
JP2001076161A (ja) * 1999-09-02 2001-03-23 Canon Inc 画像処理方法及び装置並びに記憶媒体
JP2004157818A (ja) * 2002-11-07 2004-06-03 Panasonic Communications Co Ltd 画像処理装置及び画像処理方法
JP2006024147A (ja) * 2004-07-09 2006-01-26 Foundation For The Promotion Of Industrial Science 背景画像生成方法及び装置
JP2009064199A (ja) * 2007-09-05 2009-03-26 Casio Comput Co Ltd ジェスチャー認識装置及びジェスチャー認識方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2722817A4 *

Also Published As

Publication number Publication date
EP2722817A1 (en) 2014-04-23
JP4980486B1 (ja) 2012-07-18
EP2722817B1 (en) 2018-11-28
CN103548055B (zh) 2016-02-17
JP5006479B1 (ja) 2012-08-22
US20140126827A1 (en) 2014-05-08
AU2011371064A1 (en) 2014-01-16
EP2722817A4 (en) 2015-08-19
JP2013020605A (ja) 2013-01-31
RU2592457C2 (ru) 2016-07-20
US9311557B2 (en) 2016-04-12
AU2011371064B2 (en) 2015-04-16
RU2013154986A (ru) 2015-07-20
CN103548055A (zh) 2014-01-29
ES2710860T3 (es) 2019-04-29
JP2013020602A (ja) 2013-01-31

Similar Documents

Publication Publication Date Title
JP5006479B1 (ja) 動き画像領域判定装置またはその方法
JP6088792B2 (ja) 画像検出装置及び制御プログラム並びに画像検出方法
JP6809613B2 (ja) 画像前景の検出装置、検出方法及び電子機器
US20150187051A1 (en) Method and apparatus for estimating image noise
JP2020170252A5 (ja)
JP5690800B2 (ja) 動き画像領域判定装置またはその方法
JP6591349B2 (ja) 動体検知システム及び動体検知方法
JP5542981B1 (ja) 画像処理装置、フレームレートコントロール処理判定装置またはその方法
US9430959B2 (en) Character region pixel identification device and method thereof
JP5656964B2 (ja) シーンチェンジ判定装置またはその方法
CN106934814B (zh) 一种基于图像的背景信息识别方法及装置
WO2015166518A1 (ja) アノテーション線判断装置、アノテーション線除去装置、医療用の表示装置およびそれらの方法
CN115240067A (zh) 一种利用隔帧差分法自动检测高空坠物的方法

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201180071038.2

Country of ref document: CN

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

Ref document number: 11867827

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 14126353

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2013154986

Country of ref document: RU

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 2011371064

Country of ref document: AU

Date of ref document: 20111201

Kind code of ref document: A