WO2013171857A1 - 画像処理装置、画像処理装置の制御方法、プログラム、及び情報記憶媒体 - Google Patents

画像処理装置、画像処理装置の制御方法、プログラム、及び情報記憶媒体 Download PDF

Info

Publication number
WO2013171857A1
WO2013171857A1 PCT/JP2012/062511 JP2012062511W WO2013171857A1 WO 2013171857 A1 WO2013171857 A1 WO 2013171857A1 JP 2012062511 W JP2012062511 W JP 2012062511W WO 2013171857 A1 WO2013171857 A1 WO 2013171857A1
Authority
WO
WIPO (PCT)
Prior art keywords
annotation
display position
target
display
image processing
Prior art date
Application number
PCT/JP2012/062511
Other languages
English (en)
French (fr)
Inventor
宗 益子
Original Assignee
楽天株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 楽天株式会社 filed Critical 楽天株式会社
Priority to PCT/JP2012/062511 priority Critical patent/WO2013171857A1/ja
Priority to JP2014515408A priority patent/JP5753945B2/ja
Priority to US14/401,117 priority patent/US9996516B2/en
Publication of WO2013171857A1 publication Critical patent/WO2013171857A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/169Annotation, e.g. comment data or footnotes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation

Definitions

  • the present invention relates to an image processing apparatus, a control method for the image processing apparatus, a program, and an information storage medium.
  • an image processing apparatus that can add an annotation to an annotation target (an annotation target) included in an image.
  • an image processing apparatus for example, an image processing apparatus that displays an annotation input by a user at a position in an image specified by the user, or a display position of the annotation displayed in the image is specified by the user.
  • An image processing apparatus or the like that changes to a different position is known.
  • the display position of the annotation is set to an appropriate position in consideration of the annotation and the annotation target.
  • the annotation may not be displayed at an appropriate position.
  • an annotation may not be displayed at an appropriate position. In such a case, the user needs to change the display position of the annotation.
  • the present invention has been made in view of the above problems, and an object thereof is to provide an image processing apparatus capable of displaying an annotation at an appropriate position, a control method for the image processing apparatus, a program, and an information storage medium. There is to do.
  • an image processing apparatus includes an image acquisition unit that acquires an image, and annotation target information that acquires annotation target information that is included in the image and specifies an annotation target to which an annotation is added.
  • An acquisition unit, an annotation information acquisition unit that acquires annotation information indicating an annotation, a display position determination unit that determines a display position of the annotation based on the position or region of the annotation target, and the display position determination unit Data output means for outputting data of the target image in which the annotation is displayed at the displayed position.
  • the image processing apparatus control method includes an image acquisition step for acquiring an image, and an annotation target information acquisition step for acquiring annotation target information for specifying an annotation target to be annotated, included in the image.
  • An annotation information acquisition step for acquiring annotation information indicating an annotation
  • a display position determination step for determining the display position of the annotation based on the position or region of the annotation target, and the display determined by the display position determination step
  • a data output step of outputting data of the target image in which the annotation is displayed at a position.
  • the program according to the present invention includes an image acquisition unit that acquires an image, an annotation target information acquisition unit that acquires annotation target information that specifies an annotation target to which an annotation is included, and an annotation information that indicates an annotation.
  • Annotation information acquisition means to be acquired display position determination means for determining the display position of the annotation based on the position or area of the annotation object, and the annotation is displayed at the display position determined by the display position determination means
  • An information storage medium includes an image acquisition unit that acquires an image, an annotation target information acquisition unit that acquires annotation target information that specifies an annotation target to which an annotation is included, and an annotation that indicates an annotation.
  • Annotation information acquisition means for acquiring information, a display position determination means for determining the display position of the annotation based on the position or region of the annotation object, and the annotation at the display position determined by the display position determination means
  • a computer-readable information storage medium storing a program for causing a computer to function as data output means for outputting data of the displayed target image.
  • the display position determining means determines the display position of the annotation as the position or region of the annotation target and the other Means for determining based on the display position of the annotation may be included.
  • the display position determining means determines the display position of the annotation as the position or region of the annotation target and the other Means for determining based on the position or region of the annotation target corresponding to the annotation may be included.
  • the display position determination means includes the display position of the annotation and a new display position of the other annotation.
  • Means for determining based on the position or region of the annotation target and the position or region of the annotation target corresponding to the other annotation may be included.
  • the display position determination means determines the display position of the annotation when it is assumed that the annotation belonging to the type is given to the annotation target for each of a plurality of types of annotation.
  • the annotation information indicates when the annotation information is obtained by the means for obtaining the display position as a display position candidate corresponding to the type, and the annotation information obtained by the annotation acquisition means. Means for determining a display position of the annotation based on a display position candidate corresponding to the type to which the annotation belongs.
  • the types of the plurality of types of annotations may be set based on at least one of the annotation length, display color, display size, and writing direction.
  • the display position determination unit is configured to add an annotation having a length indicated by the length information to the annotation target for each of a plurality of types of length information related to the length of the annotation.
  • the display position of the annotation when assumed is determined based on the position or area of the annotation target, the display position is acquired as a display position candidate corresponding to the length information, and the annotation acquisition means Means for determining the display position of the annotation based on a display position candidate corresponding to the length of the annotation indicated by the annotation information when the annotation information is acquired.
  • the display position determination unit is configured to add an annotation having a display color indicated by the display color information to the annotation target for each of a plurality of types of display color information related to the display color of the annotation.
  • a display position of the annotation in the case of assumption is determined based on the position or region of the annotation target, the display position is acquired as a display position candidate corresponding to the display color information, and the annotation acquisition unit Means for determining a display position of the annotation based on a display position candidate corresponding to a display color of the annotation indicated by the annotation when the annotation information is acquired.
  • the display position determination unit is configured to add an annotation having a display size indicated by the display size information to each of the plurality of types of display size information related to the display size of the annotation. Determining the display position of the annotation when assumed based on the position or region of the annotation target, and acquiring the display position as a display position candidate corresponding to the display size information; and Means for determining a display position of the annotation based on a display position candidate corresponding to a display size of the annotation indicated by the annotation when the annotation information is acquired.
  • the display position determination unit is configured to display, for each of a plurality of types of writing direction information regarding the writing direction of the annotation, an annotation having a writing direction indicated by the writing direction information. Determining the display position of the annotation in the case where it is assumed to be attached to the annotation based on the position or region of the annotation target, and acquiring the display position as a display position candidate corresponding to the writing direction information; and Means for determining the display position of the annotation based on the display position candidate corresponding to the writing direction of the annotation indicated by the annotation when the annotation information is acquired by the annotation acquisition means.
  • the image may have already been given another annotation
  • the display position determining unit may determine that the annotation belongs to the type of each of a plurality of types of annotation. Assuming that, the display position of the annotation and the new display position of the other annotation are based on the position or region of the annotation target and the position or region of the annotation target corresponding to the other annotation. And the display position corresponding to the type to which the annotation indicated by the annotation information belongs when the annotation information is acquired by the annotation acquisition unit.
  • a means for determining a display position of the annotation and a new display position of the other annotation based on the position candidate may be included.
  • the display position determining unit may include a unit that determines the display position of the annotation based on at least one of the size and shape of the annotation target region. .
  • the display position determination means determines the display position of the annotation as at least one of the length, display color, display size, and writing direction of the annotation and the annotation target. Means for determining based on the position or area may be included.
  • the means for acquiring the edge amount of the pixel of the image, and the display position determining means include the display position of the annotation, the edge amount of the pixel of the image, and the position of the annotation target.
  • a means for determining based on the area may be included.
  • the means for acquiring the saliency map of the image, and the display position determination means, the display position of the annotation, the saliency map, the position or region of the annotation target, Means for determining based on the above may be included.
  • the annotation target candidate included in the image and the display position of the annotation when it is assumed that the annotation is added to the annotation target candidate are the position of the annotation target candidate or Means for determining based on a region and acquiring the display position as a display position candidate; and the display position determining means, when the annotation target specified by the annotation target information corresponds to the annotation target candidate, Means for determining the display position of the annotation based on the candidate may be included.
  • the annotation can be displayed at an appropriate position.
  • FIG. 1 It is a figure which shows an example of the hardware constitutions of the image processing apparatus which concerns on embodiment of this invention. It is a figure which shows an example of an image. It is a figure which shows an example of an annotation object designation
  • FIG. 1 shows an example of a hardware configuration of an image processing apparatus 10 according to the first embodiment.
  • the image processing apparatus 10 includes a control unit 11, a storage unit 12, an optical disc drive unit 13, a communication interface unit 14, an operation unit 15, a display unit 16, and an audio output unit 17.
  • the control unit 11 includes, for example, one or a plurality of microprocessors, and executes information processing according to an operating system or a program stored in the storage unit 12.
  • the storage unit 12 includes, for example, a RAM, a hard disk, or a solid state drive.
  • the optical disk drive unit 13 reads programs and data stored on an optical disk (information storage medium).
  • the program and data are supplied to the storage unit 12 via the optical disc. That is, an optical disc storing programs and data is loaded into the optical disc drive unit 13, and the programs and data are read from the optical disc by the optical disc drive unit 13 and stored in the storage unit 12.
  • the optical disk drive unit 13 is not an essential component. A component for reading a program or data stored in an information storage medium (for example, a memory card) other than the optical disk may be included instead of the optical disk drive unit 13. And a program and data may be supplied to the memory
  • the communication interface unit 14 is an interface for connecting the image processing apparatus 10 to a communication network.
  • the image processing apparatus 10 can exchange data with other apparatuses (for example, servers) via a communication network.
  • the program and data may be supplied to the storage unit 12 via a communication network.
  • the operation unit 15 is for a user to perform an operation.
  • the operation unit 15 includes a keyboard or buttons for inputting characters.
  • the operation unit 15 includes a pointing device (touch pad, mouse, stick, or the like) for pointing a position in the screen displayed on the display unit 16.
  • a so-called software keyboard may be displayed on the display unit 16.
  • the display unit 16 is, for example, a liquid crystal display
  • the audio output unit 17 is, for example, a speaker or a headphone terminal.
  • the image processing apparatus 10 can access the database 20.
  • the database 20 may be realized in an apparatus (for example, a server) other than the image processing apparatus 10 or may be realized in the image processing apparatus 10.
  • FIG. 2 shows an example of an image stored in the storage unit 12 or the database 20.
  • a person 32, a ball 34, and a tree 36 are shown.
  • the image processing apparatus 10 can add an annotation to an annotation target (an object to which an annotation is added) included in the image 30.
  • an annotation target an object to which an annotation is added
  • a procedure performed by the user to give an annotation will be described.
  • annotation target designation screen When giving an annotation, first, a screen for designating an annotation target (hereinafter referred to as “annotation target designation screen”) is displayed on the display unit 16.
  • annotation target means an object to which an annotation is attached (in other words, an object to which an annotation is associated).
  • an object included in the image 30 may correspond to “an annotation target”.
  • the person 32, the ball 34, or the tree 36 may correspond to “annotation target”.
  • FIG. 3 shows an example of the annotation target designation screen 40.
  • an image 30 is displayed on the annotation target designation screen 40.
  • the annotation target designation screen 40 displays a message 42 that requests the user to designate the annotation target.
  • the annotation target designation screen 40 accepts designation of the annotation target by the user.
  • the user designates the annotation target using a pointing device or the like.
  • the user designates the person 32 as an annotation target.
  • the user designates the person 32 as an annotation target by pointing to a point in the area where the person 32 is displayed or by inputting a trajectory surrounding the person 32.
  • FIG. 4 shows an example of the annotation input screen. Note that the annotation input screen 50 shown in FIG. 4 is an annotation input screen when a person 32 is designated as an annotation target.
  • an image 30 is displayed on the annotation input screen 50.
  • the annotation input screen 50 displays a message 52 that requests the user to input an annotation.
  • the annotation input screen 50 accepts an input of an annotation by the user.
  • the annotation input screen 50 includes an input field 54 and a registration button 56.
  • annotations input by the user using a keyboard or the like are displayed.
  • the input field 54 is displayed in the image 30.
  • the display position of the input field 54 is determined based on the position of the annotation target (person 32). For example, the input field 54 is displayed at a position near the annotation target.
  • the annotation display color, display size (character size), writing direction (horizontal writing or vertical writing), etc. may be specified by the user.
  • the user may be able to select any one of a plurality of annotations prepared in advance.
  • the registration button 56 on the annotation input screen 50 When the registration button 56 on the annotation input screen 50 is clicked, the annotation target specified by the user and the data related to the annotation input by the user are stored in the storage unit 12 or the database in association with the image 30. Further, the image 30 with the annotation input by the user is displayed on the display unit 16.
  • FIG. 5 shows an example of the image 30 to which the annotation inputted by the user is given.
  • the annotation 62 input by the user is displayed in association with the person 32 to be annotated.
  • a connection line 60 that associates the annotation 62 with the annotation target (person 32) is displayed.
  • the annotation input by the user is displayed at an appropriate position.
  • a technique for displaying an annotation input by a user at an appropriate position will be described.
  • FIG. 6 is a functional block diagram showing functional blocks related to the present invention among the functional blocks realized in the image processing apparatus 10.
  • the image processing apparatus 10 includes an image acquisition unit 70, an annotation target information acquisition unit 72, an annotation information acquisition unit 74, a display position determination unit 76, and a data output unit 78.
  • the image acquisition unit 70 acquires the image 30 stored in the storage unit 12 or the database 20.
  • the annotation target information acquisition unit 72 acquires the annotation target information that specifies the annotation target included in the image 30.
  • the annotation target information acquisition unit 72 acquires annotation target information indicating the annotation target specified by the user.
  • the annotation target information acquisition unit 72 includes information indicating the position in the image 30 pointed to by the user on the annotation target specifying screen 40, information indicating the locus input by the user on the annotation target specifying screen 40, or the like. Get as.
  • the annotation information acquisition unit 74 acquires annotation information indicating the annotation.
  • the annotation information acquisition unit 74 acquires annotation information indicating an annotation input (or selected) by the user.
  • annotation information indicating an annotation input (or selected) by the user.
  • the following information may be included in the annotation information.
  • -Text information indicating the annotation-Information indicating the display color of the annotation-Information indicating the display size (character size) of the annotation-Information indicating the writing direction (horizontal writing or vertical writing) of the annotation
  • the display position determination unit 76 determines the display position of the annotation.
  • the display position determination unit 76 determines the display position of the annotation based on the position or area of the annotation target in the image 30. Details of the method for determining the display position of the annotation will be described later (see step S105 in FIG. 7).
  • the data output unit 78 outputs the data of the image 30 in which the annotation input (or selected) by the user is displayed at the display position determined by the display position determining unit 76. For example, the data output unit 78 displays the above data on the display unit 16. Alternatively, the data output unit 78 outputs (saves) the above data to the storage unit 12 or the database 20.
  • FIG. 7 is a flowchart illustrating an example of processing executed by the image processing apparatus 10 when an annotation is added to the image 30.
  • the control unit 11 executes the processing shown in FIG. 7 according to the program, the control unit 11 causes the image acquisition unit 70, the annotation target information acquisition unit 72, the annotation information acquisition unit 74, the display position determination unit 76, and the data output unit 78. Will function as.
  • the control unit 11 acquires the image 30 from the storage unit 12 or the database 20 (S101). Then, the control unit 11 displays the annotation target designation screen 40 on the display unit 16 (S102). While the annotation target designation screen 40 is displayed, the control unit 11 monitors whether or not the annotation target designation has been completed (S103).
  • the control unit 11 specifies the position and area of the annotation target in the image 30 (S104). For example, based on the position in the image 30 pointed to by the user on the annotation target designation screen 40 or the locus input by the user on the annotation target designation screen 40, the control unit 11 specifies the position or region of the annotation target. For example, when the position in the person 32 is pointed by the user, the control unit 11 performs a known object area detection process based on the position pointed to by the user, thereby displaying the area where the person 32 is displayed. Is detected and the region is specified as the region to be annotated. Further, for example, when a trajectory surrounding the person 32 is input by the user, the control unit 11 specifies an area surrounded by the trajectory as an annotation target area.
  • control unit 11 determines the display position of the annotation (S105). Note that no annotation is input at this point, but in this embodiment, the display position of the annotation is determined at this point. That is, in the present embodiment, the display position of the annotation is determined before the annotation is input.
  • the display position of the annotation is determined based on at least one of the following information (A) to (H).
  • (A) Annotation target position (B) Annotation target shape or size (C) Annotation length (D) Annotation display color (E) Annotation display size (F) Annotation writing direction (G ) Edge amount of pixel of image 30 (H) Saliency map of image 30
  • control unit 11 determines the display position of the annotation based on the position of the annotation target.
  • the control unit 11 determines a position where the distance from the annotation target is equal to or less than the reference distance as the annotation display position.
  • the “distance from the annotation target” may be a distance from the representative point of the annotation target, or may be a distance from the boundary line of the annotation target region.
  • control unit 11 determines the display position of the annotation based on the annotation length (number of characters) and / or the display size (character size).
  • the control unit 11 determines a position in a relatively wide empty area as the display position of the annotation. For example, in the image 30 shown in FIG. 2, the region between the person 32 and the left side 30L of the image 30 is relatively narrow, and the region between the person 32 and the upper side 30U of the image 30 is relatively wide. Yes. For this reason, when the length of the annotation associated with the person 32 (annotation target) is long or the display size is large, the control unit 11 determines the position in the region between the person 32 and the upper side 30U of the image 30 in the annotation. The display position is determined.
  • the control unit 11 may determine the display position of the annotation within a relatively narrow empty area.
  • the control unit 11 sets the position in the region between the person 32 and the left side 30L of the image 30 as the annotation display position. May be determined.
  • control unit 11 determines the display position of the annotation based on the writing direction of the annotation and the shape or size of the annotation target area.
  • the control unit 11 when the writing direction of the annotation is “horizontal writing” and the region to be annotated has a horizontally long shape, the control unit 11 includes the region in the upper or lower region of the annotation target. The position is determined as the display position of the annotation. Note that only when the annotation length is equal to the horizontal length of the annotation target area, or when the annotation length is shorter than the horizontal length of the annotation target area, the control unit 11 The position in the upper or lower region of the annotation target may be determined as the annotation display position.
  • the control unit 11 annotates the position in the left or right area of the annotation target.
  • the display position is determined. Note that only when the annotation length is equal to the vertical length of the annotation target area, or when the annotation length is shorter than the vertical length of the annotation target area, the control unit 11
  • the position in the left or right region of the annotation target may be determined as the annotation display position.
  • control unit 11 determines the display position of the annotation based on the display color of the annotation. Specifically, the control unit 11 determines a position in a region having a color that is compatible with the display color of the annotation as the display position of the annotation. That is, the control unit 11 searches for an area having a color that is compatible with the display color of the annotation, and when such an area is found, determines the position in the area as the display position of the annotation.
  • information related to exemplary color combinations is stored in the storage unit 12 or the database 20.
  • the control unit 11 refers to this information and determines whether or not the display color of the annotation and the color of the area in the image 30 are compatible. That is, the control unit 11 determines whether or not the combination of the display color of the annotation and the color of the region matches any of the combinations indicated by the above information.
  • the control unit 11 calculates the display color of the annotation and the color of the region.
  • the “region color” may be the average of the color values of the pixels in the region, or may be the largest color among the colors of the pixels in the region.
  • control unit 11 determines the display position of the annotation based on the edge amount of each pixel of the image 30.
  • edge means the degree of color change in the image 30, and “pixel edge amount” relates to a difference in hue between the pixel and the surrounding pixels of the pixel. Amount.
  • a known method can be used as a method for calculating the edge amount of the pixel. For example, a Sobel filter can be used.
  • the edge amount S x, y of the pixel (x, y) is calculated by the following equations (1) to (3).
  • the pixel value I of each pixel is obtained by converting the RGB values of each pixel in YC B C R value. Conversion from RGB values to YC B C R value is performed by the following equation (4).
  • the pixel value I of each pixel is calculated based on the C B and CR values of each pixel. Is done. For example, the pixel value I of each pixel is calculated by the following equation (5).
  • edge may mean the degree of change in luminance in the image 30, and “pixel edge amount” is an amount relating to a difference in luminance between a pixel and a peripheral pixel of the pixel.
  • the Y value of each pixel calculated by the above equation (4) may be used as the pixel value I of each pixel.
  • the edge value of each pixel may be calculated by substituting the Y value of each pixel into the above formulas (1) to (3) as the pixel value I of each pixel.
  • the control unit 11 determines a position in the area where the total value of the edge amounts of the pixels included in the area is smaller than the reference value as the annotation display position. For example, the control unit 11 searches for a region having a predetermined size such that the total value of the edge amounts of the pixels included in the region is smaller than the reference value.
  • the display position is determined.
  • the characteristic portion of the image 30 for example, the portion in which the subject is photographed
  • the position in the region where the total value of the edge amount is smaller than the reference value is displayed as an annotation. If the position is determined, the annotation can be displayed without overlapping the feature portion of the image 30.
  • control unit 11 may determine a position in the area where the total value of the edge amounts of the pixels included in the area is larger than the reference value as the display position of the annotation. For example, the control unit 11 searches for an area of a predetermined size such that the total value of the edge amounts of pixels included in the area is larger than the reference value, and when such an area is found, the position in the area is annotated. You may make it determine as a display position. By doing in this way, you may make it display an annotation in the characteristic part (conspicuous part) of the image 30. FIG.
  • control unit 11 determines the display position of the annotation in consideration of the saliency map of the image 30.
  • the saliency map may be acquired by a known method.
  • control unit 11 determines the position in the region where the saliency is lower than the predetermined reference as the display position of the annotation so that it does not overlap with the characteristic part (the part having the saliency) of the image 30.
  • An annotation may be displayed.
  • the control unit 11 displays the annotation on the characteristic portion (the portion having the saliency) of the image 30 by determining the position in the region where the saliency is higher than the predetermined reference as the display position of the annotation. May be.
  • step S105 a position that satisfies all or part of the conditions described above is determined as the display position of the annotation.
  • the annotation length, display color, display size, and writing direction are predetermined lengths.
  • the annotation display position is determined under the assumption that the predetermined display color, the predetermined display size, and the predetermined writing direction are used.
  • step S105 the control unit 11 displays the annotation input screen 50 on the display unit 16 (S106).
  • an input field 54 is displayed at the display position determined in step S105.
  • the annotation display position (display position of the input field 54) is determined before the annotation is input. ), Assuming that the display color, display size, and writing direction are a predetermined length (number of characters), a predetermined display color, a predetermined display size, and a predetermined writing direction. A display position (an annotation display position) is determined.
  • the input field is based on the number of characters input in the input field 54. Re-determination of 54 display positions (annotation display positions) may be executed.
  • the display position of the input field 54 may be redetermined.
  • a display size different from the specified display size is specified as the display size of the annotation, or when a writing direction different from the predetermined writing direction is specified as the writing direction of the annotation Redetermination of the display position of the column 54 (annotation display position) may be executed.
  • the display position (annotation display position) of the input field 54 is re-determined according to the user-specified content, and the display position (annotation display position) of the input field 54 is changed. Good.
  • the control unit 11 monitors whether or not the annotation input is completed (S107). That is, the control unit 11 monitors whether or not the registration button 56 has been clicked.
  • control unit 11 acquires the annotation input in the input field 54 of the annotation input screen 50 (S108). And the control part 11 produces
  • the image processing apparatus 10 According to the image processing apparatus 10 according to the first embodiment described above, it is possible to display an annotation at an optimal position in consideration of the annotation and the annotation target.
  • FIG. 8 shows an example of an image 30 to which another annotation has already been added.
  • the annotation 64 is associated with the ball 34 (annotation target)
  • the annotation 66 is associated with the tree 36 (annotation target).
  • 9 and 10 are diagrams for explaining a method of determining the display position of the annotation 62 newly added to the image 30 to which other annotations 64 and 66 have already been added.
  • control unit 11 determines the display position of the newly added annotation 62 as described below.
  • the display position of the annotation 62 is determined based on at least one of the above-described information (A) to (H) and at least one of the following information (I) to (K).
  • the control unit 11 determines the display position of the annotation 62 based on the display positions of the other annotations 64 and 66. Specifically, the control unit 11 determines a position where the annotation 62 does not overlap with the other annotations 64 and 66 as the display position of the annotation 62. Alternatively, the control unit 11 determines a position where the distance from the display position of the other annotations 64 and 66 is larger than the reference distance as the display position of the annotation 62. The example shown in FIG. 9 shows a case where the display position of the annotation 62 is determined in this way.
  • control unit 11 determines the display position of the annotation 62 based on the position or area of the annotation target (ball 34, tree 36) corresponding to the other annotations 64 and 66. Specifically, the control unit 11 determines a position where the distance from the annotation target (ball 34, tree 36) corresponding to the other annotations 64 and 66 is larger than the reference distance as the display position of the annotation 62. .
  • the control unit 11 may determine the display position of the annotation 62 without considering the other annotations 64 and 66. Then, the control unit 11 may change the display positions of the other annotations 64 and 66 based on the display position of the annotation 62. In the example shown in FIG. 10, the display area of the annotation 62 overlaps the original display area of the annotation 66 (see FIG. 8), so the display position of the annotation 66 is changed to a position that does not overlap the annotation 62. . In other words, the display position of the annotation 66 is changed to a position where the distance from the annotation 62 is larger than the reference distance.
  • control unit 11 may acquire a plurality of types of combinations as combinations of display positions of the annotations 62, 64, and 66. Moreover, you may make it the control part 11 calculate each evaluation value of those combinations. Then, the control unit 11 may select any combination based on the evaluation values, and determine the display positions of the annotations 62, 64, 66 based on the selected combination.
  • the display positions of the annotations 62, 64, and 66 are determined based on at least one of the information (A) to (H).
  • the combination evaluation value is calculated based on at least one of the following indices, for example. -The distance between the annotation and the annotation target (the shorter the distance, the higher the evaluation) The distance between the annotation and other annotations (the longer the distance, the higher the evaluation) The compatibility between the display color of the annotation and the color of the display position of the annotation (the better the compatibility, the higher the evaluation) -Edge amount of the annotation display position (the smaller the edge amount, the higher the evaluation) ⁇ The saliency of the annotation display position (the lower the saliency, the higher the evaluation)
  • the annotation display position is determined before the annotation is input (in other words, before the annotation input screen 50 is displayed)
  • the display position of the annotation is determined after the annotation is input (see step S105 in FIG. 7).
  • the image processing apparatus 10 according to the second embodiment is different from the first embodiment.
  • FIG. 11 is a flowchart illustrating an example of processing executed by the image processing apparatus 10 according to the second embodiment.
  • the process shown in FIG. 11 is executed instead of the process shown in FIG.
  • Steps S201 to S204 in FIG. 11 are the same as steps S101 to S104 in FIG. For this reason, explanation is omitted here.
  • step S204 the control unit 11 displays the annotation input screen 50 on the display unit 16 (S205).
  • FIG. 12 shows an example of the annotation input screen 50 displayed in step S205.
  • An annotation input screen 50 shown in FIG. 12 is different from the annotation input screen 50 shown in FIG. 4 in that the input field 54 is displayed at a predetermined position outside the image 30.
  • Step S206 is the same as step S107 in FIG.
  • the control unit 11 acquires the annotation input in the input field 54 of the annotation input screen 50 (S207). And the control part 11 determines the display position of the annotation acquired by step S207 (S208).
  • the processing executed in step S208 is the same as that in step S105 in FIG. However, unlike step S105, since the annotation has already been input at the time when step S208 is executed, in step S208, at least the length, display color, display size, and writing direction of the actually input annotation are included. Based on one, the display position of the annotation is determined.
  • control unit 11 After the process of step S208 is executed, the control unit 11 outputs data of the image 30 in which the annotation acquired in step S207 is displayed at the display position determined in step S208 (S209). For example, the control unit 11 displays the data on the display unit 16. Alternatively, the control unit 11 stores the data in the storage unit 12 or the database 20.
  • steps S207 and S208 are executed after the input of the annotation is completed. However, steps S207 and S208 may be executed even during the input of the annotation. . That is, every time a character is input in the input field 54 of the annotation input screen 50, Steps S207 and S208 are executed based on the comment (that is, the comment being input) input in the input field 54 at that time. You may make it do.
  • the image processing apparatus 10 According to the image processing apparatus 10 according to the second embodiment described above, it is possible to display an annotation at an optimal position in consideration of the annotation and the annotation target, as in the image processing apparatus 10 according to the first embodiment. .
  • step S208 of FIG. 11 the display position of the annotation may be determined based on at least one of the above-described information (A) to (K) (see FIGS. 9 and 10).
  • a plurality of annotation display position candidates are acquired before the input of the annotation is completed. After the input of the annotation is completed, the plurality of annotation display positions are used as the display positions of the annotation. One of the display position candidates is selected. In this respect, the image processing apparatus 10 according to the third embodiment is different from the first embodiment.
  • annotation types are defined in advance.
  • 13A, 13B, 13C, and 13D show examples of annotation types.
  • FIGS. 13A to 13D a plurality of types are defined, and annotation characteristics belonging to each type are described.
  • the annotation type is set based on the annotation length (number of characters).
  • the “first type” in FIG. 13A is a type to which an annotation having a length of 5 characters or less belongs.
  • the “second type” is a type to which an annotation having a length of 6 to 10 characters belongs, and the “third type” is a type to which an annotation having a length of 11 characters or more belongs. .
  • the annotation type is set based on the display color of the annotation.
  • the “first type” in FIG. 13B is a type to which an annotation whose display color is black belongs.
  • the “second type” is a type to which an annotation whose display color is red belongs, and the “third type” is a type to which an annotation whose display color is blue belongs.
  • the annotation type is set based on the display size of the annotation.
  • the “first type” in FIG. 13B is a type to which an annotation whose display size is less than P1 belongs.
  • the “second type” is a type to which an annotation whose display size is P1 or more and less than P2 belongs, and the “third type” is a type to which an annotation whose display size is P2 or more belongs.
  • “P1” and “P2” indicate a predetermined display size (character size).
  • the annotation type is set based on the writing direction of the annotation.
  • the “first type” in FIG. 13D is the type to which the horizontally written annotation belongs, and the “second type” is the type to which the vertically written annotation belongs.
  • annotation type may be set based on a plurality of annotation length, display color, display size, and writing direction. That is, a type that combines a plurality of FIGS. 13A to 13D may be set.
  • FIG. 14 is a flowchart illustrating an example of processing executed by the image processing apparatus 10 according to the third embodiment.
  • a process shown in FIG. 14 is executed instead of the process shown in FIG.
  • the process illustrated in FIG. 14 will be described assuming that the type illustrated in FIG. 13A is defined.
  • step S304 the control unit 11 acquires a display position candidate of the annotation given to the annotation target (S305).
  • FIG. 15 is a flowchart showing an example of the process executed in step S305.
  • the control unit 11 initializes a variable i to 1 (S401). And the control part 11 acquires an i-th display position candidate (S402). For example, the control unit 11 determines the display position of the annotation when it is assumed that the annotation given to the annotation target belongs to the i-th type.
  • the processing itself for determining the display position of the annotation is the same as step S105 in FIG. 7 or step S208 in FIG.
  • the control part 11 acquires said display position as a display position candidate (namely, i-th display position candidate) corresponding to an i-th type.
  • control unit 11 determines the display position of the annotation under the assumption that the length of the annotation given to the annotation target is 5 characters or less, and the display position Is acquired as the first display position candidate.
  • step S402 the control unit 11 stores the i th display position candidate acquired in step S402 in the storage unit 12. Thereafter, the control unit 11 adds 1 to the variable i (S403), and determines whether or not the variable i is 3 or less (S404).
  • “3” is the total number of annotation types (see FIG. 13A).
  • the control unit 11 acquires the i-th display position candidate (S402). For example, when the variable i is 2, the control unit 11 determines the display position of the annotation under the assumption that the length of the annotation given to the annotation target is 6 to 10 characters, The display position is acquired as a second display position candidate. For example, when the variable i is 3, the control unit 11 determines the display position of the annotation under the assumption that the length of the annotation given to the annotation target is 11 characters or more, and the display The position is acquired as a third display position candidate. On the other hand, when the variable i is not 3 or less, the control unit 11 ends this process.
  • FIG. 16 shows an example of first to third display position candidates.
  • the display position candidate 82A indicates the first display position candidate.
  • the display position candidate 82B indicates a second display position candidate, and the display position candidate 82C indicates a third display position candidate.
  • the display position candidate 82A is a display position candidate acquired when it is assumed that the annotation belongs to the first type. Since the first type is a type to which an annotation with a short length belongs (see FIG. 13A), the display position candidate 82A is a display position candidate acquired under the assumption that the length of the annotation is short. For this reason, the display position candidate 82A is set to a relatively narrow empty area.
  • the display position candidate 82C is a display position candidate acquired when it is assumed that the annotation belongs to the third type. Since the third type is a type to which an annotation with a long length belongs, the display position candidate 82C is a display position candidate acquired under the assumption that the annotation has a long length. For this reason, the display position candidate 82C is set in a relatively wide empty area.
  • control unit 11 displays the annotation input screen 50 on the display unit 16 as shown in FIG. 14 (S306).
  • the control unit 11 displays an annotation input screen 50 as shown in FIG.
  • Step S307 is the same as step S107 in FIG.
  • FIG. 17 is a flowchart showing an example of the process executed in step S309.
  • the control unit 11 initializes a variable i to 1 (S501). Then, the control unit 11 determines whether or not the annotation acquired in step S308 belongs to the i-th type (S502). For example, when the variable i is 1, the control unit 11 determines whether the length (number of characters) of the annotation acquired in step S308 is 5 characters or less. If the length of the annotation acquired in step S308 is 5 characters or less, the control unit 11 determines that the annotation acquired in step S308 belongs to the first type.
  • control unit 11 adds 1 to the variable i (S503), and determines whether the variable i is 3 or less (S504).
  • “3” is the total number of annotation types.
  • step S502 When it is determined that the variable i is 3 or less, the control unit 11 re-executes step S502.
  • the case where it is determined that the variable i is not 3 or less is a case where the annotation acquired in step S308 does not belong to any of the first to third types.
  • the control unit 11 displays an error message on the display unit 16 (S506), and ends this process. In this case, the control unit 11 ends the process shown in FIG. 14 without executing step S310 described later. If the first to third types are set so that the annotation always belongs to one of the first to third types, step S506 is unnecessary.
  • step S502 When it is determined in step S502 that the annotation acquired in step S308 belongs to the i-th type, the control unit 11 determines the display position of the annotation acquired in step S308 based on the i-th display position candidate. decide. That is, the control unit 11 determines the i-th display position candidate as the display position using the annotation acquired in step S308 (S505). And the control part 11 complete
  • step S309 that is, the process shown in FIG. 17
  • the control unit 11 outputs the data of the image 30 in which the annotation acquired in step S308 is displayed at the display position determined in step S309 ( S310).
  • the control unit 11 displays the data on the display unit 16.
  • the control unit 11 stores the data in the storage unit 12 or the database 20.
  • the image processing apparatus 10 According to the image processing apparatus 10 according to the third embodiment described above, it is possible to display an annotation at an optimum position in consideration of the annotation and the annotation target, as in the image processing apparatus 10 according to the first embodiment. .
  • step S402 the control unit 11 acquires a combination of display position candidates corresponding to the i-th type (combination of i-th display position candidates).
  • the control unit 11 acquires a combination of display position candidates corresponding to the first type (a combination of first display position candidates). That is, the control unit 11 assumes that the newly added annotation belongs to the first type, the display position candidate of the newly added annotation, and the other annotations 64 and 66 that have already been added. A combination with a display position candidate is acquired.
  • FIG. 18 shows an example of a combination of first display position candidates.
  • the display position candidate 82A indicates a first display position candidate for a newly added annotation.
  • the display position candidate 84A indicates the first display position candidate of the annotation 64 already assigned to the ball 34, and the display position candidate 86A is the first of the annotation 66 already assigned to the tree 36. Display position candidates are shown.
  • the control unit 11 determines the display position of the annotation under the assumption that the newly added annotation belongs to the first type, and determines the display position of the newly added annotation. Obtained as a candidate 82A. Since the first type is a type to which an annotation of 5 characters or less belongs (see FIG. 13A), the display position candidate 82A is acquired under the assumption that the newly added annotation is an annotation of 5 characters or less. Display position candidates.
  • the control unit 11 acquires the display position candidate 84A of the annotation 64 based on the display position candidate 82A. Since the original display area of the annotation 64 (see FIG. 8) does not overlap with the display position candidate 82A, for example, the control unit 11 acquires the original display position of the annotation 64 as the display position candidate 84A.
  • the control unit 11 acquires the display position candidate 86A of the annotation 66 based on the display position candidates 82A and 84A. Since the original display area (see FIG. 8) of the annotation 66 does not overlap with the display position candidates 82A and 84A, for example, the control unit 11 acquires the original display position of the annotation 66 as the display position candidate 86A.
  • the control unit 11 acquires a combination of display position candidates corresponding to the second type (a combination of second display position candidates). That is, the control unit 11 assumes that the newly added annotation belongs to the second type, and displays the newly added annotation display position candidates and the other annotations 64 and 66 that have already been added. A combination with a display position candidate is acquired.
  • FIG. 19 shows an example of a combination of second display position candidates.
  • a display position candidate 82B indicates a second display position candidate for a newly added annotation.
  • the display position candidate 84B indicates the second display position candidate of the annotation 64 that has already been given to the ball 34, and the display position candidate 86B is the third of the annotation 66 that has already been given to the tree 36. Display position candidates are shown.
  • control unit 11 determines the display position of the annotation under the assumption that the newly added annotation belongs to the second type, and determines the display position of the newly added annotation. Obtained as candidate 82B. Since the second type is a type to which an annotation of 6 to 10 characters belongs, the display position candidate 82B is based on the assumption that the newly added annotation is an annotation of 6 to 10 characters. This is a display position candidate to be acquired.
  • the control unit 11 acquires the display position candidate 84B of the annotation 64 based on the display position candidate 82B. Since the original display area of the annotation 64 (see FIG. 8) overlaps the display position candidate 82B, for example, the control unit 11 acquires a position different from the original display position of the annotation 64 as the display position candidate 84B. That is, the control unit 11 acquires a position that does not overlap with the display position candidate 82B as the display position candidate 84B.
  • the control unit 11 acquires the display position candidate 86B of the annotation 66 based on the display position candidates 82B and 84B. Since the original display area of the annotation 66 (see FIG. 8) does not overlap the display position candidates 82B and 84B, for example, the control unit 11 acquires the original display position of the annotation 66 as the display position candidate 86B.
  • the control unit 11 acquires a combination of display position candidates corresponding to the third type (a combination of third display position candidates). That is, the control unit 11 assumes that the newly added annotation belongs to the third type, and the display position candidates of the newly added annotation and the other annotations 64 and 66 that have already been added. A combination with a display position candidate is acquired.
  • FIG. 20 shows an example of a combination of third display position candidates.
  • a display position candidate 82C indicates a third display position candidate of a newly added annotation.
  • the display position candidate 84C indicates a third display position candidate of the annotation 64 that has already been given to the ball 34, and the display position candidate 86C represents the third candidate of the annotation 66 that has already been given to the tree 36. Display position candidates are shown.
  • the control unit 11 determines the display position of the annotation under the assumption that the newly added annotation belongs to the third type, and determines the display position of the newly added annotation. Obtained as a candidate 82C. Since the third type is a type to which an annotation of 11 characters or more belongs, the display position candidate 82C is a display position candidate acquired under the assumption that the newly added annotation is an annotation of 11 characters or more. is there.
  • the control unit 11 After the display position candidate 82C is acquired, the control unit 11 acquires the display position candidate 84C of the annotation 64 based on the display position candidate 82C. Since the original display area of the annotation 64 (see FIG. 8) does not overlap with the display position candidate 82C, for example, the control unit 11 acquires the original display position of the annotation 64 as the display position candidate 84C.
  • the control unit 11 acquires the display position candidate 86C of the annotation 66 based on the display position candidates 82C and 84C. Since the original display area of the annotation 66 (see FIG. 8) overlaps with the display position candidate 82C, for example, the control unit 11 acquires a position different from the original display position of the annotation 66 as the display position candidate 86C. That is, the control unit 11 acquires a position that does not overlap with the display position candidate 82C as the display position candidate 86C.
  • step S505 of FIG. it is assumed that a comment (annotation 62 in FIGS. 9 and 10) is newly added to the image 30 to which other annotations 64 and 66 have already been added.
  • control unit 11 determines the display position of the newly added annotation and the display positions of the other already added annotations 64 and 66.
  • the control unit 11 sets the third display position candidate combination (FIG. 20). Based on the reference), the annotation acquired in step S308 and the display positions of the other annotations 64 and 66 that have already been assigned are determined.
  • control unit 11 determines the display position candidate 82C as the display position of the annotation acquired in step S308. Similarly, the control unit 11 determines the display position candidate 84C as the display position of the annotation 64. Further, the control unit 11 determines the display position candidate 86 ⁇ / b> C as the display position of the annotation 66. As a result, in step S310 in FIG. 14, data of the image 30 as shown in FIG. 10 is output.
  • the present invention is not limited to the first to third embodiments described above.
  • the image processing apparatus 10 may perform processing as described below in advance.
  • the control unit 11 detects an annotation target candidate included in the image 30 in advance.
  • annotation target candidate means something that may be designated by the user as an annotation target.
  • a known method can be used as a method for detecting an annotation target candidate.
  • an object region included in the image 30 may be detected by an object region detection algorithm, and the object region may be detected as a candidate for annotation.
  • a face area included in the image 30 may be detected by a face recognition algorithm, and the face area may be detected as a candidate for annotation.
  • the annotation target candidate may be detected based on the edge amount of the pixel of the image 30. Specifically, an area of a predetermined size is searched for such that the total edge amount of pixels included in the area is higher than the reference value, and if such an area is found, the area is detected as a candidate for annotation. You may make it do.
  • an annotation target candidate may be detected based on the saliency map of the image 30. More specifically, an area having a saliency higher than a predetermined reference may be searched, and when such an area is found, the area may be detected as an annotation target candidate.
  • the control unit 11 assumes that the annotation target candidate is designated as the annotation target and the annotation related to the annotation target is input, and the annotation display position. To decide. At this time, the annotation length, display color, display size, and writing direction are assumed to be a predetermined length, a predetermined display color, a predetermined display size, and a predetermined writing direction. The display position of is determined.
  • the display position determined in this way is stored in the storage unit 12 or the database 20 in association with the annotation target candidate, and is used in, for example, step S105 in FIG.
  • the control unit 11 determines whether or not the annotation target designated by the user corresponds to the annotation target candidate detected in advance.
  • the control unit 11 displays the annotation display position based on the display position stored in association with the annotation target candidate. To decide. For example, the control unit 11 determines the display position stored in association with the annotation target candidate as the display position of the annotation.
  • 10 image processing apparatus 11 control unit, 12 storage unit, 13 optical disk drive unit, 14 communication interface unit, 15 operation unit, 16 display unit, 17 audio output unit, 20 database, 30 images, 32 people, 34 balls, 36 trees 40 annotation target designation screen, 42, 52 message, 50 annotation input screen, 54 input field, 56 registration button, 62, 64, 66 annotation, 70 image acquisition unit, 72 annotation target information acquisition unit, 74 annotation information acquisition unit, 76 Display position determination unit, 78 Data output unit, 82A, 82B, 82C, 84A, 84B, 84C, 86A, 86B, 86C Display position candidates.

Abstract

 注釈を適切な位置に表示することが可能な画像処理装置を提供すること。画像取得部(70)は画像を取得する。注釈対象情報取得部(72)は、画像に含まれる、注釈を付与する注釈対象を指定する注釈対象情報を取得する。注釈情報取得部(74)は、注釈を示す注釈情報を取得する。表示位置決定部(76)は、注釈の表示位置を、注釈対象の位置又は領域に基づいて決定する。データ出力部(78)は、表示位置決定部(76)によって決定された表示位置に注釈が表示された画像のデータを出力する。

Description

画像処理装置、画像処理装置の制御方法、プログラム、及び情報記憶媒体
 本発明は画像処理装置、画像処理装置の制御方法、プログラム、及び情報記憶媒体に関する。
 画像に含まれる注釈対象(注釈を付与する対象)に注釈を付与できるようになっている画像処理装置が知られている。このような画像処理装置としては、例えば、ユーザによって入力された注釈をユーザによって指定された画像内の位置に表示する画像処理装置や、画像内に表示された注釈の表示位置をユーザによって指定された位置に変更する画像処理装置等が知られている。
特開平6-131143号公報
 注釈の表示位置は、注釈と注釈対象とを考慮して適切な位置に設定されるのが望ましい。しかしながら、従来の画像処理装置では注釈が適切な位置に表示されない場合があった。例えば、特許文献1に記載の装置では、注釈が適切な位置に表示されない場合があり、そのような場合にはユーザが注釈の表示位置を変更する必要がある。
 本発明は上記課題に鑑みてなされたものであって、その目的は、注釈を適切な位置に表示することが可能な画像処理装置、画像処理装置の制御方法、プログラム、及び情報記憶媒体を提供することにある。
 上記課題を解決するために、本発明に係る画像処理装置は、画像を取得する画像取得手段と、前記画像に含まれる、注釈を付与する注釈対象を指定する注釈対象情報を取得する注釈対象情報取得手段と、注釈を示す注釈情報を取得する注釈情報取得手段と、前記注釈の表示位置を、前記注釈対象の位置又は領域に基づいて決定する表示位置決定手段と、前記表示位置決定手段によって決定された表示位置に前記注釈が表示された前記対象画像のデータを出力するデータ出力手段と、を含むことを特徴とする。
 また、本発明に係る画像処理装置の制御方法は、画像を取得する画像取得ステップと、前記画像に含まれる、注釈を付与する注釈対象を指定する注釈対象情報を取得する注釈対象情報取得ステップと、注釈を示す注釈情報を取得する注釈情報取得ステップと、前記注釈の表示位置を、前記注釈対象の位置又は領域に基づいて決定する表示位置決定ステップと、前記表示位置決定ステップによって決定された表示位置に前記注釈が表示された前記対象画像のデータを出力するデータ出力ステップと、を含むことを特徴とする。
 また、本発明に係るプログラムは、画像を取得する画像取得手段、前記画像に含まれる、注釈を付与する注釈対象を指定する注釈対象情報を取得する注釈対象情報取得手段、注釈を示す注釈情報を取得する注釈情報取得手段、前記注釈の表示位置を、前記注釈対象の位置又は領域に基づいて決定する表示位置決定手段、及び、前記表示位置決定手段によって決定された表示位置に前記注釈が表示された前記対象画像のデータを出力するデータ出力手段、としてコンピュータを機能させるためのプログラムである。
 また、本発明に係る情報記憶媒体は、画像を取得する画像取得手段、前記画像に含まれる、注釈を付与する注釈対象を指定する注釈対象情報を取得する注釈対象情報取得手段、注釈を示す注釈情報を取得する注釈情報取得手段、前記注釈の表示位置を、前記注釈対象の位置又は領域に基づいて決定する表示位置決定手段、及び、前記表示位置決定手段によって決定された表示位置に前記注釈が表示された前記対象画像のデータを出力するデータ出力手段、としてコンピュータを機能させるためのプログラムを記録したコンピュータ読み取り可能な情報記憶媒体である。
 また、本発明の一態様では、前記画像には、他の注釈が既に付与されており、前記表示位置決定手段は、前記注釈の表示位置を、前記注釈対象の位置又は領域と、前記他の注釈の表示位置と、に基づいて決定する手段を含むようにしてもよい。
 また、本発明の一態様では、前記画像には、他の注釈が既に付与されており、前記表示位置決定手段は、前記注釈の表示位置を、前記注釈対象の位置又は領域と、前記他の注釈に対応する注釈対象の位置又は領域と、に基づいて決定する手段を含むようにしてもよい。
 また、本発明の一態様では、前記画像には、他の注釈が既に付与されており、前記表示位置決定手段は、前記注釈の表示位置と、前記他の注釈の新たな表示位置とを、前記注釈対象の位置又は領域と、前記他の注釈に対応する注釈対象の位置又は領域と、に基づいて決定する手段を含むようにしてもよい。
 また、本発明の一態様では、前記表示位置決定手段は、複数種類の注釈の類型の各々について、該類型に属する注釈が前記注釈対象に付与されたと想定した場合における該注釈の表示位置を前記注釈対象の位置又は領域に基づいて決定し、該表示位置を、該類型に対応する表示位置候補として取得する手段と、前記注釈取得手段によって前記注釈情報が取得された場合、該注釈情報が示す注釈が属する類型に対応する表示位置候補に基づいて、該注釈の表示位置を決定する手段と、を含むようにしてもよい。
 また、本発明の一態様では、前記複数種類の注釈の類型は、注釈の長さ、表示色、表示サイズ、及び書字方向の少なくとも一つに基づいて設定されるようにしてもよい。
 また、本発明の一態様では、前記表示位置決定手段は、注釈の長さに関する複数種類の長さ情報の各々について、該長さ情報が示す長さを有する注釈が前記注釈対象に付与されたと想定した場合における該注釈の表示位置を前記注釈対象の位置又は領域に基づいて決定し、該表示位置を、該長さ情報に対応する表示位置候補として取得する手段と、前記注釈取得手段によって前記注釈情報が取得された場合、該注釈情報が示す注釈が有する長さに対応する表示位置候補に基づいて、該注釈の表示位置を決定する手段と、を含むようにしてもよい。
 また、本発明の一態様では、前記表示位置決定手段は、注釈の表示色に関する複数種類の表示色情報の各々について、該表示色情報が示す表示色を有する注釈が前記注釈対象に付与されたと想定した場合における該注釈の表示位置を前記注釈対象の位置又は領域に基づいて決定し、該表示位置を、該表示色情報に対応する表示位置候補として取得する手段と、前記注釈取得手段によって前記注釈情報が取得された場合、該注釈情報が示す注釈が有する表示色に対応する表示位置候補に基づいて、該注釈の表示位置を決定する手段と、を含むようにしてもよい。
 また、本発明の一態様では、前記表示位置決定手段は、注釈の表示サイズに関する複数種類の表示サイズ情報の各々について、該表示サイズ情報が示す表示サイズを有する注釈が前記注釈対象に付与されたと想定した場合における該注釈の表示位置を前記注釈対象の位置又は領域に基づいて決定し、該表示位置を、該表示サイズ情報に対応する表示位置候補として取得する手段と、前記注釈取得手段によって前記注釈情報が取得された場合、該注釈情報が示す注釈が有する表示サイズに対応する表示位置候補に基づいて、該注釈の表示位置を決定する手段と、を含むようにしてもよい。
 また、本発明の一態様では、前記表示位置決定手段は、注釈の書字方向に関する複数種類の書字方向情報の各々について、該書字方向情報が示す書字方向を有する注釈が前記注釈対象に付与されたと想定した場合における該注釈の表示位置を前記注釈対象の位置又は領域に基づいて決定し、該表示位置を、該書字方向情報に対応する表示位置候補として取得する手段と、前記注釈取得手段によって前記注釈情報が取得された場合、該注釈情報が示す注釈が有する書字方向に対応する表示位置候補に基づいて、該注釈の表示位置を決定する手段と、を含むようにしてもよい。
 また、本発明の一態様では、前記画像には、他の注釈が既に付与されており、前記表示位置決定手段は、複数種類の注釈の類型の各々について、前記注釈が該類型に属すると場合を想定して、前記注釈の表示位置と、前記他の注釈の新たな表示位置とを、前記注釈対象の位置又は領域と、前記他の注釈に対応する注釈対象の位置又は領域と、に基づいて決定し、該表示位置を、該類型に対応する表示位置候補として取得する手段と、前記注釈取得手段によって前記注釈情報が取得された場合、該注釈情報が示す注釈が属する類型に対応する表示位置候補に基づいて、該注釈の表示位置と、前記他の注釈の新たな表示位置と、を決定する手段と、を含むようにしてもよい。
 また、本発明の一態様では、前記表示位置決定手段は、前記注釈対象の領域の大きさ及び形状のうちの少なくとも一つに基づいて、前記注釈の表示位置を決定する手段を含むようにしてもよい。
 また、本発明の一態様では、前記表示位置決定手段は、前記注釈の表示位置を、該注釈の長さ、表示色、表示サイズ、及び書字方向のうちの少なくとも一つと、前記注釈対象の位置又は領域と、に基づいて決定する手段を含むようにしてもよい。
 また、本発明の一態様では、前記画像の画素のエッジ量を取得する手段と、前記表示位置決定手段は、前記注釈の表示位置を、前記画像の画素のエッジ量と、前記注釈対象の位置又は領域と、に基づいて決定する手段を含むようにしてもよい。
 また、本発明の一態様では、前記画像の顕著性マップを取得する手段と、前記表示位置決定手段は、前記注釈の表示位置を、前記顕著性マップと、前記注釈対象の位置又は領域と、に基づいて決定する手段を含むようにしてもよい。
 また、本発明の一態様では、前記画像に含まれる注釈対象候補を検出する手段と、前記注釈対象候補に注釈が付与されたと想定した場合における該注釈の表示位置を前記注釈対象候補の位置又は領域に基づいて決定し、該表示位置を表示位置候補として取得する手段と、前記表示位置決定手段は、前記注釈対象情報によって指定された注釈対象が前記注釈対象候補に対応する場合、前記表示位置候補に基づいて、前記注釈の表示位置を決定する手段を含むようにしてもよい。
 本発明によれば、注釈を適切な位置に表示することが可能になる。
本発明の実施形態に係る画像処理装置のハードウェア構成の一例を示す図である。 画像の一例を示す図である。 注釈対象指定画面の一例を示す図である。 注釈入力画面の一例を示す図である。 注釈が付与された画像の一例を示す図である。 画像処理装置の機能ブロック図である。 画像処理装置で実行される処理の一例を示すフロー図である。 他の注釈が既に付与されている画像の一例を示す図である。 注釈が付与された画像の他の一例を示す図である。 注釈が付与された画像の他の一例を示す図である。 画像処理装置で実行される処理の他の一例を示すフロー図である。 注釈入力画面の他の一例を示す図である。 注釈の類型の一例について説明するための図である。 注釈の類型の他の一例について説明するための図である。 注釈の類型の他の一例について説明するための図である。 注釈の類型の他の一例について説明するための図である。 画像処理装置で実行される処理の他の一例を示すフロー図である。 画像処理装置で実行される処理の他の一例を示すフロー図である。 表示位置候補の一例を示す図である。 画像処理装置で実行される処理の他の一例を示すフロー図である。 表示位置候補の一例を示す図である。 表示位置候補の一例を示す図である。 表示位置候補の一例を示す図である。
 以下、本発明の実施形態の例について図面に基づき詳細に説明する。
 [第1実施形態]まず、本発明の第1実施形態について説明する。本発明の第1実施形態に係る画像処理装置は、例えばデスクトップ型コンピュータ、ラップトップ型コンピュータ、タブレット型コンピュータ、又はサーバコンピュータ等によって実現される。図1は、第1実施形態に係る画像処理装置10のハードウェア構成の一例を示す。
 図1に示すように、画像処理装置10は制御部11、記憶部12、光ディスクドライブ部13、通信インタフェース部14、操作部15、表示部16、及び音声出力部17を含む。
 制御部11は例えば1又は複数のマイクロプロセッサを含み、記憶部12に記憶されたオペレーティングシステム又はプログラムに従って情報処理を実行する。記憶部12は例えばRAM、ハードディスク、又はソリッドステートドライブを含む。光ディスクドライブ部13は、光ディスク(情報記憶媒体)に記憶されたプログラムやデータを読み取る。
 プログラムやデータは光ディスクを介して記憶部12に供給される。すなわち、プログラムやデータが記憶された光ディスクが光ディスクドライブ部13に装着され、プログラムやデータが光ディスクドライブ部13によって光ディスクから読み出され、記憶部12に記憶される。なお、光ディスクドライブ部13は必須の構成要素ではない。光ディスク以外の情報記憶媒体(例えばメモリカード)に記憶されたプログラム又はデータを読み取るための構成要素が光ディスクドライブ部13の代わりに含まれるようにしてもよい。そして、光ディスク以外の情報記憶媒体を介してプログラムやデータが記憶部12に供給されるようにしてもよい。
 通信インタフェース部14は画像処理装置10を通信ネットワークに接続するためのインタフェースである。画像処理装置10は通信ネットワークを介して他の装置(例えばサーバ等)とデータを授受できるようになっている。なお、プログラム及びデータは通信ネットワークを介して記憶部12に供給されるようにしてもよい。
 操作部15はユーザが操作を行うためのものである。例えば、操作部15は、文字を入力するためのキーボード又はボタンを含む。また、操作部15は、表示部16に表示される画面内の位置を指し示すためのポインティングデバイス(タッチパッド、マウス、又はスティック等)を含む。なお、いわゆるソフトウェアキーボードが表示部16に表示されるようにしてもよい。
 表示部16は例えば液晶表示ディスプレイ等であり、音声出力部17は例えばスピーカ又はヘッドホン端子等である。
 画像処理装置10はデータベース20にアクセスできるようになっている。データベース20は、画像処理装置10以外の装置(例えばサーバ)において実現されていてもよいし、画像処理装置10において実現されていてもよい。
 記憶部12又はデータベース20には画像が記憶される。図2は、記憶部12又はデータベース20に記憶される画像の一例を示す。図2に示す画像30には人32、ボール34、及び木36が写っている。
 画像処理装置10では、画像30に含まれる注釈対象(注釈を付与する対象)に注釈を付与できるようになっている。以下、注釈を付与するためにユーザが行う手順について説明する。
 注釈を付与する場合、まず、注釈対象を指定するための画面(以下「注釈対象指定画面」と呼ぶ。)が表示部16に表示される。なお、「注釈対象」とは、注釈を付与する対象(言い換えれば、注釈を関連づける対象)のことを意味している。例えば、画像30に含まれているオブジェクトが「注釈対象」に相当し得る。図2に示す画像30の場合、人32、ボール34、又は木36が「注釈対象」に相当し得る。
 図3は注釈対象指定画面40の一例を示す。図3に示すように、注釈対象指定画面40には画像30が表示される。また、注釈対象指定画面40には、注釈対象を指定するようにユーザに要求するメッセージ42が表示されており、注釈対象指定画面40では、ユーザによる注釈対象の指定が受け付けられる。
 注釈対象指定画面40において、ユーザはポインティングデバイス等を用いて注釈対象を指定する。画像30に写っている人32に関する注釈を入力する場合、ユーザは人32を注釈対象として指定する。例えば、ユーザは、人32が表示されている領域内の点を指し示したり、人32を囲むような軌跡を入力したりすることによって、人32を注釈対象として指定する。
 注釈対象が指定された場合、注釈を入力するための画面(以下「注釈入力画面」と呼ぶ。)が表示部16に表示される。図4は注釈入力画面の一例を示す。なお、図4に示す注釈入力画面50は、人32が注釈対象として指定された場合の注釈入力画面である。
 図4に示すように、注釈入力画面50には画像30が表示される。また、注釈入力画面50には、注釈を入力するようにユーザに要求するメッセージ52が表示されており、注釈入力画面50では、ユーザによる注釈の入力が受け付けられる。
 注釈入力画面50は入力欄54と登録ボタン56とを含んでいる。入力欄54には、ユーザがキーボード等を用いて入力した注釈が表示される。入力欄54は画像30内に表示される。入力欄54の表示位置は注釈対象(人32)の位置に基づいて決定される。例えば、注釈対象の付近の位置に入力欄54は表示される。ユーザは注釈対象に関する注釈を入力した後、登録ボタン56をクリックする。
 なお、注釈入力画面50では、注釈の表示色、表示サイズ(文字サイズ)や、書字方向(横書き又は縦書き)等もユーザが指定できるようにしてもよい。また、注釈入力画面50では、予め用意された複数の注釈のうちのいずれかをユーザが選択できるようにしてもよい。
 注釈入力画面50の登録ボタン56がクリックされると、ユーザによって指定された注釈対象やユーザによって入力された注釈に関するデータが画像30に関連づけて記憶部12又はデータベースに保存される。また、ユーザによって入力された注釈が付与された画像30が表示部16に表示される。
 図5は、ユーザによって入力された注釈が付与された画像30の一例を示す。図5に示す画像30では、ユーザによって入力された注釈62が、注釈対象である人32に関連づけて表示されている。なお、図5に示す画像30では、注釈62と注釈対象(人32)とを関連づける連結線60が表示されている。
 画像処理装置10では、ユーザによって入力された注釈が適切な位置に表示されるようになっている。以下、ユーザによって入力された注釈を適切な位置に表示するための技術について説明する。
 図6は、画像処理装置10において実現される機能ブロックのうち、本発明に関連する機能ブロックを示す機能ブロック図である。図6に示すように、画像処理装置10は画像取得部70、注釈対象情報取得部72、注釈情報取得部74、表示位置決定部76、及びデータ出力部78を含む。
 画像取得部70は記憶部12又はデータベース20に記憶された画像30を取得する。
 注釈対象情報取得部72は、画像30に含まれる注釈対象を指定する注釈対象情報を取得する。本実施形態の場合、注釈対象情報取得部72は、ユーザによって指定された注釈対象を示す注釈対象情報を取得する。例えば、注釈対象情報取得部72は、注釈対象指定画面40においてユーザが指し示した画像30内の位置を示す情報、又は、注釈対象指定画面40においてユーザが入力した軌跡を示す情報等を注釈対象情報として取得する。
 注釈情報取得部74は注釈を示す注釈情報を取得する。本実施形態の場合、注釈情報取得部74は、ユーザが入力(又は選択)した注釈を示す注釈情報を取得する。例えば、下記に示すような情報が注釈情報に含まれ得る。
・注釈を示すテキスト情報
・注釈の表示色を示す情報
・注釈の表示サイズ(文字サイズ)を示す情報
・注釈の書字方向(横書き又は縦書き)を示す情報
 表示位置決定部76は注釈の表示位置を決定する。表示位置決定部76は、画像30における注釈対象の位置又は領域に基づいて、注釈の表示位置を決定する。注釈の表示位置の決定方法の詳細については後述する(図7のステップS105等参照)。
 データ出力部78は、ユーザによって入力(又は選択)された注釈が表示位置決定部76によって決定された表示位置に表示された画像30のデータを出力する。例えば、データ出力部78は上記のデータを表示部16に表示させる。あるいは、データ出力部78は上記のデータを記憶部12又はデータベース20に出力(保存)する。
 次に、上記に説明した機能ブロックを実現するために画像処理装置10で実行される処理について説明する。図7は、注釈を画像30に付与する場合に画像処理装置10で実行される処理の一例を示すフロー図である。制御部11がプログラムに従って図7に示す処理を実行することによって、制御部11が画像取得部70、注釈対象情報取得部72、注釈情報取得部74、表示位置決定部76、及びデータ出力部78として機能するようになる。
 図7に示すように、まず、制御部11は画像30を記憶部12又はデータベース20から取得する(S101)。そして、制御部11は注釈対象指定画面40を表示部16に表示する(S102)。注釈対象指定画面40が表示されている間、制御部11は、注釈対象の指定が完了したか否かを監視する(S103)。
 注釈対象の指定が完了した場合、制御部11は、画像30における注釈対象の位置や領域を特定する(S104)。例えば、注釈対象指定画面40においてユーザが指し示した画像30内の位置や、注釈対象指定画面40においてユーザが入力した軌跡に基づいて、制御部11は、注釈対象の位置や領域を特定する。例えば、人32内の位置がユーザによって指し示された場合、制御部11は、ユーザによって指し示された位置に基づいて公知のオブジェクト領域検出処理を実行することによって、人32が表示された領域を検出し、該領域を注釈対象の領域として特定する。また例えば、人32を囲むような軌跡がユーザによって入力された場合、制御部11は、該軌跡によって囲まれた領域を注釈対象の領域として特定する。
 その後、制御部11は注釈の表示位置を決定する(S105)。なお、この時点では注釈は入力されていないが、本実施形態ではこの時点で注釈の表示位置が決定される。すなわち、本実施形態では、注釈が入力されるのに先立って、注釈の表示位置が決定される。
 注釈の表示位置は下記の情報(A)~(H)の少なくとも一つに基づいて決定される。
(A)注釈対象の位置
(B)注釈対象の領域の形状又は大きさ
(C)注釈の長さ
(D)注釈の表示色
(E)注釈の表示サイズ
(F)注釈の書字方向
(G)画像30の画素のエッジ量
(H)画像30の顕著性マップ
 例えば、制御部11は注釈対象の位置に基づいて注釈の表示位置を決定する。
 具体的には、制御部11は、注釈対象からの距離が基準距離以下となるような位置を注釈の表示位置として決定する。ここで、「注釈対象からの距離」とは、注釈対象の代表点からの距離であってもよいし、注釈対象の領域の境界線からの距離であってもよい。
 また例えば、制御部11は注釈の長さ(文字数)又は/及び表示サイズ(文字サイズ)に基づいて注釈の表示位置を決定する。
 具体的には、注釈の長さが長い場合や注釈の表示サイズが大きい場合、制御部11は、比較的広い空き領域内の位置を注釈の表示位置として決定する。例えば、図2に示す画像30では、人32と画像30の左辺30Lとの間の領域は比較的狭くなっており、人32と画像30の上辺30Uとの間の領域は比較的広くなっている。このため、人32(注釈対象)に関連づける注釈の長さが長い場合や表示サイズが大きい場合、制御部11は、人32と画像30の上辺30Uとの間の領域内の位置を、注釈の表示位置として決定する。
 一方、注釈の長さが短い場合や注釈の表示サイズが小さい場合、制御部11は、比較的狭い空き領域内に注釈の表示位置を決定する場合がある。人32(注釈対象)に関連づける注釈の長さが短い場合や表示サイズが小さい場合、制御部11は、人32と画像30の左辺30Lとの間の領域内の位置を、注釈の表示位置として決定する場合がある。
 また例えば、制御部11は、注釈の書字方向と、注釈対象の領域の形状又は大きさと、に基づいて注釈の表示位置を決定する。
 具体的には、注釈の書字方向が「横書き」であり、かつ、注釈対象の領域が横長の形状を有している場合、制御部11は、注釈対象の上側又は下側の領域内の位置を注釈の表示位置として決定する。なお、注釈の長さが注釈対象の領域の横方向の長さと同等である場合、又は、注釈の長さが注釈対象の領域の横方向の長さよりも短い場合に限って、制御部11は、注釈対象の上側又は下側の領域内の位置を注釈の表示位置として決定するようにしてもよい。
 また、注釈の書字方向が「縦書き」であり、かつ、注釈対象の領域が縦長の形状を有している場合、制御部11は、注釈対象の左側又は右側の領域内の位置を注釈の表示位置として決定する。なお、注釈の長さが注釈対象の領域の縦方向の長さと同等である場合、又は、注釈の長さが注釈対象の領域の縦方向の長さよりも短い場合に限って、制御部11は、注釈対象の左側又は右側の領域内の位置を注釈の表示位置として決定するようにしてもよい。
 また例えば、制御部11は注釈の表示色に基づいて注釈の表示位置を決定する。具体的には、制御部11は、注釈の表示色との相性が良い色を有する領域内の位置を注釈の表示位置として決定する。すなわち、制御部11は、注釈の表示色との相性が良い色を有する領域を探し、そのような領域が見つかったら、該領域内の位置を注釈の表示位置として決定する。
 本実施形態では、色の模範組み合わせ(すなわち、相性が良い色の組み合わせ)に関する情報が記憶部12又はデータベース20に記憶されている。制御部11はこの情報を参照し、注釈の表示色と、画像30内の領域の色と、の相性が良いか否かを判定する。すなわち、制御部11は、注釈の表示色と、領域の色と、の組み合わせが上記の情報が示す組み合わせのいずれかに合致しているか否かを判定する。そして、注釈の表示色と、領域の色と、の組み合わせが上記の情報が示す組み合わせのいずれかに合致している場合に、制御部11は、注釈の表示色と、領域の色と、の相性が良いと判定する。なお、ここで、「領域の色」とは、領域内の画素の色値の平均であってもよいし、領域内の画素の色のうちで最も多い色であってもよい。
 また例えば、制御部11は画像30の各画素のエッジ量に基づいて注釈の表示位置を決定する。
 ここで、「エッジ」とは、画像30中で色が変化する度合いのことを意味しており、「画素のエッジ量」とは、画素と該画素の周辺画素との間の色相の差に関する量である。画素のエッジ量を算出するための手法としては公知の手法を用いることができる。例えば、Sobelフィルタを用いることができる。画素(x,y)における画素値をIx,yとした場合、画素(x,y)のエッジ量Sx,yは下記式(1)~(3)によって算出される。
Figure JPOXMLDOC01-appb-M000001
 
 なお、各画素の画素値Iは、各画素のRGB値をYC値に変換することによって取得される。RGB値からYC値への変換は下記式(4)によって行われる。ここでは、画素と該画素の周辺画素との間の色相の差に関する量を「画素のエッジ量」として用いるため、各画素のC,C値に基づいて各画素の画素値Iが算出される。例えば下記式(5)によって各画素の画素値Iが算出される。
Figure JPOXMLDOC01-appb-M000002
 
 なお、「エッジ」は、画像30中で輝度が変化する度合いのことを意味してもよく、「画素のエッジ量」は、画素と該画素の周辺画素との間の輝度の差に関する量であってもよい。すなわち、上記式(4)によって算出される各画素のY値が各画素の画素値Iとして用いられるようにしてもよい。言い換えれば、各画素のY値が各画素の画素値Iとして上記式(1)~(3)に代入されることによって、各画素のエッジ量が算出されるようにしてもよい。
 制御部11は、領域内に含まれる画素のエッジ量の合計値が基準値よりも小さい領域内の位置を注釈の表示位置として決定する。例えば、制御部11は、領域内に含まれる画素のエッジ量の合計値が基準値よりも小さいような所定サイズの領域を探し、そのような領域が見つかったら、該領域内の位置を注釈の表示位置として決定する。一般的に、画像30の特徴部分(例えば、被写体が写っている部分等)は色相又は輝度の変化が大きくなるため、エッジ量の合計値が基準値よりも小さい領域内の位置を注釈の表示位置として決定するようにすれば、画像30の特徴部分と重ならないようにして注釈を表示できるようになる。
 なお、制御部11は、領域内に含まれる画素のエッジ量の合計値が基準値よりも大きい領域内の位置を注釈の表示位置として決定するようにしてもよい。例えば、制御部11は、領域内に含まれる画素のエッジ量の合計値が基準値よりも大きいような所定サイズの領域を探し、そのような領域が見つかったら、該領域内の位置を注釈の表示位置として決定するようにしてもよい。このようにすることによって、画像30の特徴部分(目立つ部分)に注釈を表示するようにしてもよい。
 また例えば、制御部11は、画像30の顕著性マップを考慮して注釈の表示位置を決定する。なお、顕著性マップは公知の手法によって取得するようにすればよい。
 具体的には、制御部11は、顕著性が所定の基準よりも低い領域内の位置を注釈の表示位置として決定することによって、画像30の特徴部分(顕著性がある部分)と重ならないようにして注釈を表示するようにしてもよい。なお、制御部11は、顕著性が所定の基準よりも高い領域内の位置を注釈の表示位置として決定することによって、画像30の特徴部分(顕著性がある部分)に注釈を表示するようにしてもよい。
 ステップS105では、以上に説明したような条件の全部又は一部を満足するような位置が注釈の表示位置として決定される。なお、図7に示す処理では、注釈が入力される前に注釈の表示位置が決定されるようになっているため、注釈の長さ、表示色、表示サイズ、及び書字方向が所定の長さ、所定の表示色、所定の表示サイズ、及び所定の書字方向であるとの仮定の下で、注釈の表示位置が決定されることになる。
 ステップS105が実行された後、制御部11は注釈入力画面50を表示部16に表示する(S106)。注釈入力画面50では、ステップS105で決定された表示位置に入力欄54が表示される。
 なお、上述したように、図7に示す処理では、注釈が入力される前に注釈の表示位置(入力欄54の表示位置)が決定されるようになっているため、注釈の長さ(文字数)、表示色、表示サイズ、及び書字方向が所定の長さ(文字数)、所定の表示色、所定の表示サイズ、及び所定の書字方向であるとの仮定の下で、入力欄54の表示位置(注釈の表示位置)が決定されることになる。
 そこで、注釈入力画面50が表示されている間において、入力欄54に入力された文字数が所定の文字数に比べて多くなった場合には、入力欄54に入力された文字数に基づいて、入力欄54の表示位置(注釈の表示位置)の再決定が実行されるようにしてもよい。
 また、注釈の表示色として所定の表示色とは異なる色が指定された場合にも、入力欄54の表示位置(注釈の表示位置)の再決定が実行されるようにしてもよい。同様に、注釈の表示サイズとして所定の表示サイズとは異なる表示サイズが指定された場合や、注釈の書字方向として所定の書字方向とは異なる書字方向が指定された場合にも、入力欄54の表示位置(注釈の表示位置)の再決定が実行されるようにしてもよい。
 以上のように、ユーザの指定内容に応じて、入力欄54の表示位置(注釈の表示位置)の再決定を実行し、入力欄54の表示位置(注釈の表示位置)を変えるようにしてもよい。
 注釈入力画面50が表示されている間、制御部11は、注釈の入力が完了したか否かを監視する(S107)。すなわち、制御部11は登録ボタン56がクリックされたか否かを監視する。
 注釈の入力が完了した場合、制御部11は、注釈入力画面50の入力欄54に入力された注釈を取得する(S108)。そして、制御部11は、ステップS108で取得された注釈がステップS105で決定された表示位置に表示された画像30のデータを生成し、該データを出力する(S109)。例えば、制御部11は該データを表示部16に表示する。あるいは、制御部11は該データを記憶部12又はデータベース20に保存する。
 以上説明した第1実施形態に係る画像処理装置10によれば、注釈や注釈対象を考慮した最適な位置に注釈を表示することが可能になる。
 ところで、以上では、注釈が付与されていない画像30に注釈を付与する場合について説明した。しかしながら、他の注釈が既に画像30に付与されている場合もある。図8は、他の注釈が既に付与されている画像30の一例を示す。図8に示す画像30では、注釈64がボール34(注釈対象)に関連づけられており、注釈66が木36(注釈対象)に関連づけられている。
 ここで、他の注釈が既に付与されている画像30に新たに付与される注釈の表示位置を決定する方法について説明する。図9及び図10は、他の注釈64,66が既に付与されている画像30に新たに付与される注釈62の表示位置を決定する方法について説明するための図である。
 他の注釈64,66が既に画像30に付与されている場合、図7のステップS105において、制御部11は、新たに付与される注釈62の表示位置を下記に説明するようにして決定する。
 この場合、注釈62の表示位置は、先述の情報(A)~(H)の少なくとも一つと、下記の情報(I)~(K)の少なくとも一つと、に基づいて決定される。
(I)他の注釈64,66の表示位置
(J)他の注釈64,66に対応する注釈対象(ボール34,木36)の位置
(K)他の注釈64,66に対応する注釈対象(ボール34,木36)の領域の形状又は大きさ
 例えば、制御部11は、他の注釈64,66の表示位置に基づいて注釈62の表示位置を決定する。具体的には、制御部11は、注釈62が他の注釈64,66と重ならないような位置を注釈62の表示位置として決定する。あるいは、制御部11は、他の注釈64,66の表示位置からの距離が基準距離よりも大きくなるような位置を注釈62の表示位置として決定する。図9に示す例は、このようにして注釈62の表示位置が決定された場合について示している。
 また例えば、制御部11は、他の注釈64,66に対応する注釈対象(ボール34,木36)の位置又は領域に基づいて、注釈62の表示位置を決定する。具体的には、制御部11は、他の注釈64,66に対応する注釈対象(ボール34,木36)からの距離が基準距離よりも大きくなるような位置を注釈62の表示位置として決定する。
 なお、図7のステップS105において、制御部11は、他の注釈64,66を考慮することなく、注釈62の表示位置を決定するようにしてもよい。そして、制御部11は、注釈62の表示位置に基づいて、他の注釈64,66の表示位置を変更するようにしてもよい。図10に示す例では、注釈62の表示領域と、注釈66の元々の表示領域(図8参照)が重なるため、注釈66の表示位置が、注釈62と重ならないような位置に変更されている。言い換えれば、注釈66の表示位置が、注釈62からの距離が基準距離よりも大きくなるような位置に変更されている。
 あるいは、図7のステップS105において、制御部11は、注釈62,64,66の表示位置の組み合わせとして複数種類の組み合わせを取得するようにしてもよい。また、制御部11はそれらの組み合わせの各々の評価値を算出するようにしてもよい。そして、制御部11は、それらの評価値に基づいていずれかの組み合わせを選出し、選出された組み合わせに基づいて、注釈62,64,66の表示位置を決定するようにしてもよい。
 なお、この場合、注釈62,64,66の表示位置は上記の情報(A)~(H)の少なくとも一つに基づいてそれぞれ決定される。また、組み合わせの評価値は例えば下記のような指標の少なくとも一つに基づいて算出される。
・注釈と注釈対象との間の距離(距離が短いほど、評価が高くなる。)
・注釈と他の注釈との間の距離(距離が長いほど、評価が高くなる。)
・注釈の表示色と該注釈の表示位置の色との相性(相性が良いほど、評価が高くなる。)
・注釈の表示位置のエッジ量(エッジ量が小さいほど、評価が高くなる。)
・注釈の表示位置の顕著性(顕著性が低いほど、評価が高くなる。)
 [第2実施形態]本発明の第2実施形態について説明する。以下に説明する相違点を除いて、第2実施形態に係る画像処理装置10は第1実施形態と同様である。
 第1実施形態に係る画像処理装置10では、注釈が入力される前に(言い換えれば、注釈入力画面50が表示される前に)、注釈の表示位置が決定されるようになっていたが(図7のステップS105参照)、第2実施形態に係る画像処理装置10では、注釈が入力された後に、注釈の表示位置が決定されるようになっている。この点で第2実施形態に係る画像処理装置10は第1実施形態と異なっている。
 第2実施形態に係る画像処理装置10で実行される処理について説明する。図11は、第2実施形態に係る画像処理装置10で実行される処理の一例を示すフロー図である。第2実施形態に係る画像処理装置10では、図7に示す処理に代えて、図11に示す処理が実行される。
 図11のステップS201~S204は図7のステップS101~S104と同様である。このため、ここでは説明を省略する。
 ステップS204の処理が実行された後、制御部11は注釈入力画面50を表示部16に表示する(S205)。図12は、ステップS205において表示される注釈入力画面50の一例を示す。図12に示す注釈入力画面50は、入力欄54が画像30外の所定位置に表示される点で、図4に示す注釈入力画面50と異なっている。
 注釈入力画面50が表示されている間、制御部11は注釈の入力が完了したか否かを監視する(S206)。ステップS206は図7のステップS107と同様である。
 注釈の入力が完了した場合、制御部11は、注釈入力画面50の入力欄54に入力された注釈を取得する(S207)。そして、制御部11は、ステップS207で取得された注釈の表示位置を決定する(S208)。基本的に、ステップS208で実行される処理は図7のステップS105と同様である。ただし、ステップS105と異なり、ステップS208が実行される時点では注釈が既に入力されているため、ステップS208では、実際に入力された注釈の長さ、表示色、表示サイズ、及び書字方向の少なくとも一つに基づいて、注釈の表示位置が決定される。
 ステップS208の処理が実行された後、制御部11は、ステップS207で取得された注釈がステップS208で決定された表示位置に表示された画像30のデータを出力する(S209)。例えば、制御部11は該データを表示部16に表示する。あるいは、制御部11は該データを記憶部12又はデータベース20に保存する。
 なお、図11に示す処理では、注釈の入力が完了した後にステップS207,S208が実行されるようになっていたが、注釈の入力中においてもステップS207,S208が実行されるようにしてもよい。すなわち、注釈入力画面50の入力欄54に文字が入力されるごとに、その時点で入力欄54に入力されている注釈(すなわち、入力途中の注釈)に基づいて、ステップS207,S208が実行されるようにしてもよい。
 以上説明した第2実施形態に係る画像処理装置10によれば、第1実施形態に係る画像処理装置10と同様、注釈や注釈対象を考慮した最適な位置に注釈を表示することが可能になる。
 なお、第2実施形態に係る画像処理装置10においても、他の注釈が既に画像30に付与されている場合がある(図8参照)。このような場合、図11のステップS208では、先述の情報(A)~(K)の少なくとも一つに基づいて、注釈の表示位置を決定するようにすればよい(図9,10参照)。
 [第3実施形態]本発明の第3実施形態について説明する。以下に説明する相違点を除いて、第3実施形態に係る画像処理装置10は第1実施形態と同様である
 第3実施形態に係る画像処理装置10では、注釈の入力が完了する前において注釈の複数の表示位置候補が取得され、注釈の入力が完了した後において、該注釈の表示位置として、それら複数の表示位置候補のうちのいずれかが選択されるようになっている。この点で第3実施形態に係る画像処理装置10は第1実施形態と異なっている。
 第3実施形態に係る画像処理装置10では、複数種類の注釈の類型(分類)が予め定義される。図13A、図13B、図13C、及び図13Dは注釈の類型の例について示す。図13A~13Dでは、複数種類の類型が定義されており、各類型に属する注釈の特徴が記載されている。
 図13Aに示す例では注釈の長さ(文字数)に基づいて注釈の類型が設定されている。図13Aにおける「第1の類型」は、長さが5文字以内である注釈が属する類型である。また、「第2の類型」は、長さが6文字以上10文字以下である注釈が属する類型であり、「第3の類型」は、長さが11文字以上である注釈が属する類型である。
 図13Bに示す例では注釈の表示色に基づいて注釈の類型が設定されている。図13Bにおける「第1の類型」は、表示色が黒色である注釈が属する類型である。また、「第2の類型」は、表示色が赤色である注釈が属する類型であり、「第3の類型」は、表示色が青色である注釈が属する類型である。
 図13Cに示す例では注釈の表示サイズに基づいて注釈の類型が設定されている。図13Bにおける「第1の類型」は、表示サイズがP1未満である注釈が属する類型である。「第2の類型」は、表示サイズがP1以上P2未満である注釈が属する類型であり、「第3の類型」は、表示サイズがP2以上である注釈が属する類型である。なお、「P1」及び「P2」は所定の表示サイズ(文字サイズ)を示している。
 図13Dに示す例では注釈の書字方向に基づいて注釈の類型が設定されている。図13Dにおける「第1の類型」は、横書きの注釈が属する類型であり、「第2の類型」は、縦書きの注釈が属する類型である。
 なお、注釈の類型(分類)は、注釈の長さ、表示色、表示サイズ、及び書字方向のうちの複数に基づいて設定されるようにしてもよい。すなわち、図13A~13Dのうちの複数を組み合わせたような類型が設定されるようにしてもよい。
 第3実施形態に係る画像処理装置10で実行される処理について説明する。図14は、第3実施形態に係る画像処理装置10で実行される処理の一例を示すフロー図である。第3実施形態に係る画像処理装置10では、図7に示す処理に代えて、図14に示す処理が実行される。なお、以下では、図13Aに示す類型が定義されていることとして、図14に示す処理について説明する。
 図14のステップS301~S304は図7のステップS101~S104と同様である。このため、ここでは説明を省略する。
 ステップS304が実行された後、制御部11は、注釈対象に付与される注釈の表示位置候補を取得する(S305)。図15はステップS305で実行される処理の一例を示すフロー図である。
 図15に示すように、まず、制御部11は変数iを1に初期化する(S401)。そして、制御部11は第iの表示位置候補を取得する(S402)。例えば、制御部11は、注釈対象に付与される注釈が第iの類型に属すると想定した場合における該注釈の表示位置を決定する。注釈の表示位置を決定する処理自体は、図7のステップS105や図11のステップS208と同様である。そして、制御部11は、上記の表示位置を、第iの類型に対応する表示位置候補(すなわち、第iの表示位置候補)として取得する。
 例えば、変数iが1である場合、制御部11は、注釈対象に付与される注釈の長さが5文字以下であるとの仮定の下で、該注釈の表示位置を決定し、該表示位置を第1の表示位置候補として取得する。
 ステップS402が実行された後、制御部11は、ステップS402で取得された第iの表示位置候補を記憶部12に記憶する。その後、制御部11は変数iに1を加算し(S403)、変数iが3以下であるか否かを判定する(S404)。ここで、「3」は注釈の類型の種類の総数である(図13A参照)。
 ステップS403による加算後の変数iが3以下である場合、制御部11は第iの表示位置候補を取得する(S402)。例えば、変数iが2である場合、制御部11は、注釈対象に付与される注釈の長さが6文字以上10文字以下であるとの仮定の下で、該注釈の表示位置を決定し、該表示位置を第2の表示位置候補として取得する。また例えば、変数iが3である場合、制御部11は、注釈対象に付与される注釈の長さが11文字以上であるとの仮定の下で、該注釈の表示位置を決定し、該表示位置を第3の表示位置候補として取得する。一方、変数iが3以下でない場合、制御部11は本処理を終了する。
 図15に示す処理が終了した時点では第1~第3の表示位置候補が取得されている。図16は、第1~第3の表示位置候補の一例を示す。図16において、表示位置候補82Aは第1の表示位置候補を示す。また、表示位置候補82Bは第2の表示位置候補を示し、表示位置候補82Cは第3の表示位置候補を示す。
 例えば、表示位置候補82Aは、注釈が第1の類型に属すると想定した場合に取得される表示位置候補である。第1の類型は長さが短い注釈が属する類型であるため(図13A参照)、表示位置候補82Aは、注釈の長さが短いとの仮定の下で取得された表示位置候補である。このため、表示位置候補82Aは比較的狭い空き領域に設定されている。
 また例えば、表示位置候補82Cは、注釈が第3の類型に属すると想定した場合に取得される表示位置候補である。第3の類型は長さが長い注釈が属する類型であるため、表示位置候補82Cは、注釈の長さが長いとの仮定の下で取得された表示位置候補である。このため、表示位置候補82Cは比較的広い空き領域に設定されている。
 図15に示す処理(すなわち、図14のステップS305)が完了された場合、図14に示すように、制御部11は注釈入力画面50を表示部16に表示する(S306)。例えば、制御部11は、図12に示すような注釈入力画面50を表示部16に表示する。
 注釈入力画面50が表示されている間、制御部11は注釈の入力が完了したか否かを監視する(S307)。ステップS307は図7のステップS107と同様である。
 注釈の入力が完了した場合、制御部11は、注釈入力画面50の入力欄54に入力された注釈を取得する(S308)。そして、制御部11は、ステップS308で取得された注釈の表示位置を決定する(S309)。図17はステップS309で実行される処理の一例を示すフロー図である。
 図17に示すように、まず、制御部11は変数iを1に初期化する(S501)。そして、制御部11は、ステップS308で取得された注釈が第iの類型に属するか否かを判定する(S502)。例えば、変数iが1である場合、制御部11は、ステップS308で取得された注釈の長さ(文字数)が5文字以下であるか否かを判定する。そして、ステップS308で取得された注釈の長さが5文字以下である場合、制御部11は、ステップS308で取得された注釈が第1の類型に属すると判定する。
 ステップS308で取得された注釈が第iの類型に属しない場合、制御部11は変数iに1を加算し(S503)、変数iが3以下であるか否かを判定する(S504)。ここで、「3」は注釈の類型の種類の総数である。
 変数iが3以下であると判定された場合、制御部11はステップS502を再実行する。一方、変数iが3以下でないと判定される場合とは、ステップS308で取得された注釈が第1~第3の類型のいずれにも属しない場合である。このような場合、制御部11はエラーメッセージを表示部16に表示し(S506)、本処理を終了する。この場合、制御部11は後述のステップS310を実行することなく、図14に示す処理を終了する。なお、注釈が第1~第3の類型のいずれかに必ず属するように第1~第3の類型が設定されているのであれば、ステップS506は不要である。
 ステップS502において、ステップS308で取得された注釈が第iの類型に属すると判定された場合、制御部11は、第iの表示位置候補に基づいて、ステップS308で取得された注釈の表示位置を決定する。すなわち、制御部11は、第iの表示位置候補を、ステップS308で取得された注釈を表示位置として決定する(S505)。そして、制御部11は本処理を終了し、図14のステップS310を実行する。
 ステップS309(すなわち、図17に示す処理)が完了された場合、制御部11は、ステップS308で取得された注釈がステップS309で決定された表示位置に表示された画像30のデータを出力する(S310)。例えば、制御部11は該データを表示部16に表示する。あるいは、制御部11は該データを記憶部12又はデータベース20に保存する。
 以上説明した第3実施形態に係る画像処理装置10によれば、第1実施形態に係る画像処理装置10と同様、注釈や注釈対象を考慮した最適な位置に注釈を表示することが可能になる。
 なお、第3実施形態に係る画像処理装置10においても、他の注釈が既に画像30に付与されている場合がある(図8参照)。他の注釈が既に画像30に付与されている場合、図15のステップS402では下記に説明するような処理が実行される。なお、ここでは、他の注釈64,66が既に付与されている画像30に注釈(図9,10における注釈62)が新たに付与される場合を想定する。
 ステップS402において、制御部11は、第iの類型に対応する表示位置候補の組み合わせ(第iの表示位置候補の組み合わせ)を取得する。
 例えば変数iが1である場合、制御部11は第1の類型に対応する表示位置候補の組み合わせ(第1の表示位置候補の組み合わせ)を取得する。すなわち、制御部11は、新たに付与される注釈が第1の類型に属する場合を想定して、新たに付与される注釈の表示位置候補と、既に付与されている他の注釈64,66の表示位置候補と、の組み合わせを取得する。
 図18は第1の表示位置候補の組み合わせの一例を示す。図18において、表示位置候補82Aは、新たに付与される注釈の第1の表示位置候補を示している。表示位置候補84Aは、ボール34に対して既に付与されている注釈64の第1の表示位置候補を示し、表示位置候補86Aは、木36に対して既に付与されている注釈66の第1の表示位置候補を示している。
 例えば、制御部11は、新たに付与される注釈が第1の類型に属するとの想定の下で、該注釈の表示位置を決定し、該表示位置を、新たに付与される注釈の表示位置候補82Aとして取得する。第1の類型は、5文字以下の注釈が属する類型であるため(図13A参照)、表示位置候補82Aは、新たに付与される注釈が5文字以下の注釈であるとの仮定の下で取得される表示位置候補である。
 表示位置候補82Aが取得された後、制御部11は注釈64の表示位置候補84Aを表示位置候補82Aに基づいて取得する。注釈64の元々の表示領域(図8参照)は表示位置候補82Aと重なっていないため、例えば、制御部11は注釈64の元々の表示位置を表示位置候補84Aとして取得する。
 表示位置候補82A,84Aが取得された後、制御部11は注釈66の表示位置候補86Aを表示位置候補82A,84Aに基づいて取得する。注釈66の元々の表示領域(図8参照)は表示位置候補82A,84Aと重なっていないため、例えば、制御部11は注釈66の元々の表示位置を表示位置候補86Aとして取得する。
 また例えば変数iが2である場合、制御部11は、第2の類型に対応する表示位置候補の組み合わせ(第2の表示位置候補の組み合わせ)を取得する。すなわち、制御部11は、新たに付与される注釈が第2の類型に属する場合を想定して、新たに付与される注釈の表示位置候補と、既に付与されている他の注釈64,66の表示位置候補と、の組み合わせを取得する。
 図19は第2の表示位置候補の組み合わせの一例を示す。図19において、表示位置候補82Bは、新たに付与される注釈の第2の表示位置候補を示している。表示位置候補84Bは、ボール34に対して既に付与されている注釈64の第2の表示位置候補を示し、表示位置候補86Bは、木36に対して既に付与されている注釈66の第3の表示位置候補を示している。
 例えば、制御部11は、新たに付与される注釈が第2の類型に属するとの想定の下で、該注釈の表示位置を決定し、該表示位置を、新たに付与される注釈の表示位置候補82Bとして取得する。第2の類型は、6文字以上10文字以下の注釈が属する類型であるため、表示位置候補82Bは、新たに付与される注釈が6文字以上10文字以下の注釈であるとの仮定の下で取得される表示位置候補である。
 表示位置候補82Bが取得された後、制御部11は注釈64の表示位置候補84Bを表示位置候補82Bに基づいて取得する。注釈64の元々の表示領域(図8参照)は表示位置候補82Bと重なっているため、例えば、制御部11は、注釈64の元々の表示位置とは異なる位置を表示位置候補84Bとして取得する。すなわち、制御部11は、表示位置候補82Bと重ならないような位置を表示位置候補84Bとして取得する。
 表示位置候補82B,84Bが取得された後、制御部11は注釈66の表示位置候補86Bを表示位置候補82B,84Bに基づいて取得する。注釈66の元々の表示領域(図8参照)は表示位置候補82B,84Bと重なっていないため、例えば、制御部11は注釈66の元々の表示位置を表示位置候補86Bとして取得する。
 例えば変数iが3である場合、制御部11は、第3の類型に対応する表示位置候補の組み合わせ(第3の表示位置候補の組み合わせ)を取得する。すなわち、制御部11は、新たに付与される注釈が第3の類型に属する場合を想定して、新たに付与される注釈の表示位置候補と、既に付与されている他の注釈64,66の表示位置候補と、の組み合わせを取得する。
 図20は第3の表示位置候補の組み合わせの一例を示す。図20において、表示位置候補82Cは、新たに付与される注釈の第3の表示位置候補を示している。表示位置候補84Cは、ボール34に対して既に付与されている注釈64の第3の表示位置候補を示し、表示位置候補86Cは、木36に対して既に付与されている注釈66の第3の表示位置候補を示している。
 例えば、制御部11は、新たに付与される注釈が第3の類型に属するとの想定の下で、該注釈の表示位置を決定し、該表示位置を、新たに付与される注釈の表示位置候補82Cとして取得する。第3の類型は11文字以上の注釈が属する類型であるため、表示位置候補82Cは、新たに付与される注釈が11文字以上の注釈であるとの仮定の下で取得される表示位置候補である。
 表示位置候補82Cが取得された後、制御部11は注釈64の表示位置候補84Cを表示位置候補82Cに基づいて取得する。注釈64の元々の表示領域(図8参照)は表示位置候補82Cと重なっていないため、例えば、制御部11は注釈64の元々の表示位置を表示位置候補84Cとして取得する。
 表示位置候補82C,84Cが取得された後、制御部11は注釈66の表示位置候補86Cを表示位置候補82C,84Cに基づいて取得する。注釈66の元々の表示領域(図8参照)は表示位置候補82Cと重なっているため、例えば、制御部11は注釈66の元々の表示位置とは異なる位置を表示位置候補86Cとして取得する。すなわち、制御部11は、表示位置候補82Cと重ならないような位置を表示位置候補86Cとして取得する。
 他の注釈が既に画像30に付与されている場合、図17のステップS505では下記に説明するような処理が実行される。なお、ここでも、他の注釈64,66が既に付与されている画像30に注釈(図9,10における注釈62)が新たに付与される場合を想定する。
 すなわち、制御部11は、第iの表示位置候補の組み合わせに基づいて、新たに付与される注釈の表示位置と、既に付与されている他の注釈64,66の表示位置と、を決定する。
 例えば、変数iが3であり、かつ、ステップS308で取得された注釈が第3の類型に属するとステップS502において判定された場合、制御部11は、第3の表示位置候補の組み合わせ(図20参照)に基づいて、ステップS308で取得された注釈と、既に付与されている他の注釈64,66の表示位置と、を決定する。
 具体的には、制御部11は、表示位置候補82Cを、ステップS308で取得された注釈の表示位置として決定する。同様に、制御部11は、表示位置候補84Cを注釈64の表示位置として決定する。また、制御部11は、表示位置候補86Cを注釈66の表示位置として決定する。その結果、図14のステップS310では、図10に示すような画像30のデータが出力されることになる。
 なお、本発明は以上に説明した第1~第3実施形態に限定されるものではない。
 例えば、画像処理装置10は、下記に説明するような処理を予め実行しておくようにしてもよい。
 すなわち、制御部11は画像30内に含まれる注釈対象候補を予め検出する。ここで、「注釈対象候補」とは、注釈対象としてユーザに指定される可能性があるものを意味している。なお、注釈対象候補の検出方法としては公知の方法を利用することが可能である。
 例えば、オブジェクト領域検出アルゴリズムによって、画像30内に含まれるオブジェクト領域を検出し、該オブジェクト領域を注釈対象候補として検出するようにしてもよい。
 また例えば、顔認識アルゴリズムによって、画像30内に含まれる顔領域を検出し、該顔領域を注釈対象候補として検出するようにしてもよい。
 また例えば、画像30の画素のエッジ量に基づいて、注釈対象候補を検出するようにしてもよい。具体的には、領域内に含まれる画素のエッジ量の合計値が基準値よりも高いような所定サイズの領域を探し、そのような領域が見つかった場合には該領域を注釈対象候補として検出するようにしてもよい。
 また例えば、画像30の顕著性マップに基づいて、注釈対象候補を検出するようにしてもよい。より具体的には、顕著性が所定の基準よりも高い領域を探し、そのような領域が見つかった場合には該領域を注釈対象候補として検出するようにしてもよい。
 以上のようにして注釈対象候補が検出された場合、制御部11は、注釈対象候補が注釈対象として指定され、かつ、該注釈対象に関する注釈が入力された場合を想定して、注釈の表示位置を決定する。なお、この際、注釈の長さ、表示色、表示サイズ、及び書字方向は所定の長さ、所定の表示色、所定の表示サイズ、及び所定の書字方向であると想定して、注釈の表示位置が決定される。
 このようにして決定された表示位置は、注釈対象候補に関連づけて記憶部12又はデータベース20に保存され、例えば図7のステップS105において用いられる。
 例えば、図7のステップS105において、制御部11は、ユーザによって指定された注釈対象が予め検出された注釈対象候補に対応しているか否かを判定する。そして、ユーザによって指定された注釈対象が予め検出された注釈対象候補に対応している場合、制御部11は、該注釈対象候補に関連づけて記憶されている表示位置に基づいて、注釈の表示位置を決定する。例えば、制御部11は、注釈対象候補に関連づけて記憶されている表示位置を注釈の表示位置として決定する。
 10 画像処理装置、11 制御部、12 記憶部、13 光ディスクドライブ部、14 通信インタフェース部、15 操作部、16 表示部、17 音声出力部、20 データベース、30 画像、32 人、34 ボール、36 木、40 注釈対象指定画面、42,52 メッセージ、50 注釈入力画面、54 入力欄、56 登録ボタン、62,64,66 注釈、70 画像取得部、72 注釈対象情報取得部、74 注釈情報取得部、76 表示位置決定部、78 データ出力部、82A,82B,82C,84A,84B,84C,86A,86B,86C 表示位置候補。

Claims (19)

  1.  画像を取得する画像取得手段と、
     前記画像に含まれる、注釈を付与する注釈対象を指定する注釈対象情報を取得する注釈対象情報取得手段と、
     注釈を示す注釈情報を取得する注釈情報取得手段と、
     前記注釈の表示位置を、前記注釈対象の位置又は領域に基づいて決定する表示位置決定手段と、
     前記表示位置決定手段によって決定された表示位置に前記注釈が表示された前記対象画像のデータを出力するデータ出力手段と、
     を含むことを特徴とする画像処理装置。
  2.  請求項1に記載の画像処理装置において、
     前記画像には、他の注釈が既に付与されており、
     前記表示位置決定手段は、前記注釈の表示位置を、前記注釈対象の位置又は領域と、前記他の注釈の表示位置と、に基づいて決定する手段を含む、
     ことを特徴とする画像処理装置。
  3.  請求項1に記載の画像処理装置において、
     前記画像には、他の注釈が既に付与されており、
     前記表示位置決定手段は、前記注釈の表示位置を、前記注釈対象の位置又は領域と、前記他の注釈に対応する注釈対象の位置又は領域と、に基づいて決定する手段を含む、
     ことを特徴とする画像処理装置。
  4.  請求項1に記載の画像処理装置において、
     前記画像には、他の注釈が既に付与されており、
     前記表示位置決定手段は、前記注釈の表示位置と、前記他の注釈の新たな表示位置とを、前記注釈対象の位置又は領域と、前記他の注釈に対応する注釈対象の位置又は領域と、に基づいて決定する手段を含む、
     ことを特徴とする画像処理装置。
  5.  請求項1に記載の画像処理装置において、
     前記表示位置決定手段は、
     複数種類の注釈の類型の各々について、該類型に属する注釈が前記注釈対象に付与されたと想定した場合における該注釈の表示位置を前記注釈対象の位置又は領域に基づいて決定し、該表示位置を、該類型に対応する表示位置候補として取得する手段と、
     前記注釈取得手段によって前記注釈情報が取得された場合、該注釈情報が示す注釈が属する類型に対応する表示位置候補に基づいて、該注釈の表示位置を決定する手段と、を含む、
     ことを特徴とする画像処理装置。
  6.  請求項5に記載の画像処理装置において、
     前記複数種類の注釈の類型は、注釈の長さ、表示色、表示サイズ、及び書字方向の少なくとも一つに基づいて設定される、
     ことを特徴とする画像処理装置。
  7.  請求項5又は6に記載の画像処理装置において、
     前記表示位置決定手段は、
     注釈の長さに関する複数種類の長さ情報の各々について、該長さ情報が示す長さを有する注釈が前記注釈対象に付与されたと想定した場合における該注釈の表示位置を前記注釈対象の位置又は領域に基づいて決定し、該表示位置を、該長さ情報に対応する表示位置候補として取得する手段と、
     前記注釈取得手段によって前記注釈情報が取得された場合、該注釈情報が示す注釈が有する長さに対応する表示位置候補に基づいて、該注釈の表示位置を決定する手段と、を含む、
     ことを特徴とする画像処理装置。
  8.  請求項5乃至7のいずれかに記載の画像処理装置において、
     前記表示位置決定手段は、
     注釈の表示色に関する複数種類の表示色情報の各々について、該表示色情報が示す表示色を有する注釈が前記注釈対象に付与されたと想定した場合における該注釈の表示位置を前記注釈対象の位置又は領域に基づいて決定し、該表示位置を、該表示色情報に対応する表示位置候補として取得する手段と、
     前記注釈取得手段によって前記注釈情報が取得された場合、該注釈情報が示す注釈が有する表示色に対応する表示位置候補に基づいて、該注釈の表示位置を決定する手段と、を含む、
     ことを特徴とする画像処理装置。
  9.  請求項5乃至8のいずれかに記載の画像処理装置において、
     前記表示位置決定手段は、
     注釈の表示サイズに関する複数種類の表示サイズ情報の各々について、該表示サイズ情報が示す表示サイズを有する注釈が前記注釈対象に付与されたと想定した場合における該注釈の表示位置を前記注釈対象の位置又は領域に基づいて決定し、該表示位置を、該表示サイズ情報に対応する表示位置候補として取得する手段と、
     前記注釈取得手段によって前記注釈情報が取得された場合、該注釈情報が示す注釈が有する表示サイズに対応する表示位置候補に基づいて、該注釈の表示位置を決定する手段と、を含む、
     ことを特徴とする画像処理装置。
  10.  請求項5乃至9のいずれかに記載の画像処理装置において、
     前記表示位置決定手段は、
     注釈の書字方向に関する複数種類の書字方向情報の各々について、該書字方向情報が示す書字方向を有する注釈が前記注釈対象に付与されたと想定した場合における該注釈の表示位置を前記注釈対象の位置又は領域に基づいて決定し、該表示位置を、該書字方向情報に対応する表示位置候補として取得する手段と、
     前記注釈取得手段によって前記注釈情報が取得された場合、該注釈情報が示す注釈が有する書字方向に対応する表示位置候補に基づいて、該注釈の表示位置を決定する手段と、を含む、
     ことを特徴とする画像処理装置。
  11.  請求項5乃至10のいずれかに記載の画像処理装置において、
     前記画像には、他の注釈が既に付与されており、
     前記表示位置決定手段は、
     複数種類の注釈の類型の各々について、前記注釈が該類型に属すると場合を想定して、前記注釈の表示位置と、前記他の注釈の新たな表示位置とを、前記注釈対象の位置又は領域と、前記他の注釈に対応する注釈対象の位置又は領域と、に基づいて決定し、該表示位置を、該類型に対応する表示位置候補として取得する手段と、
     前記注釈取得手段によって前記注釈情報が取得された場合、該注釈情報が示す注釈が属する類型に対応する表示位置候補に基づいて、該注釈の表示位置と、前記他の注釈の新たな表示位置と、を決定する手段と、を含む、
     ことを特徴とする画像処理装置。
  12.  請求項1乃至11のいずれかに記載の画像処理装置において、
     前記表示位置決定手段は、前記注釈対象の領域の大きさ及び形状のうちの少なくとも一つに基づいて、前記注釈の表示位置を決定する手段を含む、
     ことを特徴とする画像処理装置。
  13.  請求項1乃至12のいずれかに記載の画像処理装置において、
     前記表示位置決定手段は、前記注釈の表示位置を、該注釈の長さ、表示色、表示サイズ、及び書字方向のうちの少なくとも一つと、前記注釈対象の位置又は領域と、に基づいて決定する手段を含む、
     ことを特徴とする画像処理装置。
  14.  請求項1乃至13のいずれかに記載の画層処理装置において、
     前記画像の画素のエッジ量を取得する手段と、
     前記表示位置決定手段は、前記注釈の表示位置を、前記画像の画素のエッジ量と、前記注釈対象の位置又は領域と、に基づいて決定する手段を含む、
     ことを特徴とする画像処理装置。
  15.  請求項1乃至14のいずれかに記載の画像処理装置において、
     前記画像の顕著性マップを取得する手段と、
     前記表示位置決定手段は、前記注釈の表示位置を、前記顕著性マップと、前記注釈対象の位置又は領域と、に基づいて決定する手段を含む、
     ことを特徴とする画像処理装置。
  16.  請求項1乃至15のいずれかに記載の画像処理装置において、
     前記画像に含まれる注釈対象候補を検出する手段と、
     前記注釈対象候補に注釈が付与されたと想定した場合における該注釈の表示位置を前記注釈対象候補の位置又は領域に基づいて決定し、該表示位置を表示位置候補として取得する手段と、
     前記表示位置決定手段は、前記注釈対象情報によって指定された注釈対象が前記注釈対象候補に対応する場合、前記表示位置候補に基づいて、前記注釈の表示位置を決定する手段を含む、
     ことを特徴とする画像処理装置。
  17.  画像を取得する画像取得ステップと、
     前記画像に含まれる、注釈を付与する注釈対象を指定する注釈対象情報を取得する注釈対象情報取得ステップと、
     注釈を示す注釈情報を取得する注釈情報取得ステップと、
     前記注釈の表示位置を、前記注釈対象の位置又は領域に基づいて決定する表示位置決定ステップと、
     前記表示位置決定ステップによって決定された表示位置に前記注釈が表示された前記対象画像のデータを出力するデータ出力ステップと、
     を含むことを特徴とする画像処理装置の制御方法。
  18.  画像を取得する画像取得手段、
     前記画像に含まれる、注釈を付与する注釈対象を指定する注釈対象情報を取得する注釈対象情報取得手段、
     注釈を示す注釈情報を取得する注釈情報取得手段、
     前記注釈の表示位置を、前記注釈対象の位置又は領域に基づいて決定する表示位置決定手段、及び、
     前記表示位置決定手段によって決定された表示位置に前記注釈が表示された前記対象画像のデータを出力するデータ出力手段、
     としてコンピュータを機能させるためのプログラム。
  19.  画像を取得する画像取得手段、
     前記画像に含まれる、注釈を付与する注釈対象を指定する注釈対象情報を取得する注釈対象情報取得手段、
     注釈を示す注釈情報を取得する注釈情報取得手段、
     前記注釈の表示位置を、前記注釈対象の位置又は領域に基づいて決定する表示位置決定手段、及び、
     前記表示位置決定手段によって決定された表示位置に前記注釈が表示された前記対象画像のデータを出力するデータ出力手段、
     としてコンピュータを機能させるためのプログラムを記録したコンピュータ読み取り可能な情報記憶媒体。
PCT/JP2012/062511 2012-05-16 2012-05-16 画像処理装置、画像処理装置の制御方法、プログラム、及び情報記憶媒体 WO2013171857A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
PCT/JP2012/062511 WO2013171857A1 (ja) 2012-05-16 2012-05-16 画像処理装置、画像処理装置の制御方法、プログラム、及び情報記憶媒体
JP2014515408A JP5753945B2 (ja) 2012-05-16 2012-05-16 画像処理装置、画像処理装置の制御方法、プログラム、及び情報記憶媒体
US14/401,117 US9996516B2 (en) 2012-05-16 2012-05-16 Image processing device for determining a display position of an annotation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2012/062511 WO2013171857A1 (ja) 2012-05-16 2012-05-16 画像処理装置、画像処理装置の制御方法、プログラム、及び情報記憶媒体

Publications (1)

Publication Number Publication Date
WO2013171857A1 true WO2013171857A1 (ja) 2013-11-21

Family

ID=49583302

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2012/062511 WO2013171857A1 (ja) 2012-05-16 2012-05-16 画像処理装置、画像処理装置の制御方法、プログラム、及び情報記憶媒体

Country Status (3)

Country Link
US (1) US9996516B2 (ja)
JP (1) JP5753945B2 (ja)
WO (1) WO2013171857A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022004156A1 (ja) * 2020-07-01 2022-01-06 エヌ・ティ・ティ・コミュニケーションズ株式会社 情報設定制御装置、方法およびプログラム

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013161086A1 (ja) * 2012-04-27 2013-10-31 楽天株式会社 画像処理装置、画像処理装置の制御方法、プログラム、及び情報記憶媒体
US9720894B1 (en) * 2012-09-14 2017-08-01 Google Inc. Methods and systems for annotating an image and publishing the annotated image
US10489501B2 (en) * 2013-04-11 2019-11-26 Google Llc Systems and methods for displaying annotated video content by mobile computing devices
CN105988568B (zh) * 2015-02-12 2020-07-24 北京三星通信技术研究有限公司 获取笔记信息的方法和装置
CN109598775B (zh) * 2017-09-30 2023-03-31 腾讯科技(深圳)有限公司 一种动态图像合成方法、装置、终端和存储介质
JP7229795B2 (ja) * 2019-02-01 2023-02-28 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ アノテーション装置、アノテーション方法、及び、プログラム
CN111027543B (zh) * 2019-11-25 2023-04-07 北京云测信息技术有限公司 一种图像标注方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04310997A (ja) * 1991-04-09 1992-11-02 Omron Corp 画像表示方法およびその装置
JP2005159850A (ja) * 2003-11-27 2005-06-16 Seiko Epson Corp 画像と文字列の合成
JP2007004677A (ja) * 2005-06-27 2007-01-11 Seiko Epson Corp コメントレイアウト装置、アルバム作成装置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06131143A (ja) 1992-10-22 1994-05-13 Matsushita Electric Ind Co Ltd 文書入力・検索装置
US6041335A (en) * 1997-02-10 2000-03-21 Merritt; Charles R. Method of annotating a primary image with an image and for transmitting the annotated primary image
JPH10240220A (ja) * 1997-03-03 1998-09-11 Toshiba Corp 注釈表示機能を持つ情報処理機器
FR2872660B1 (fr) * 2004-07-05 2006-12-22 Eastman Kodak Co Appareil de prise de vue et procede pour la formation d'images annotees
JP2006041614A (ja) 2004-07-22 2006-02-09 Seiko Epson Corp 画像処理装置、画像処理方法、プログラム、および記録媒体
US7636883B2 (en) * 2005-05-18 2009-12-22 International Business Machines Corporation User form based automated and guided data collection
US8199242B2 (en) * 2006-03-23 2012-06-12 Nikon Corporation Camera and image processing program
US20090041352A1 (en) * 2007-08-10 2009-02-12 Naoki Okamoto Image formation device, image formation method, and computer-readable recording medium recording image formation program
CN102204238B (zh) * 2008-09-02 2014-03-26 瑞士联邦理工大学,洛桑(Epfl) 便携式设备上的图像标注
US8335344B2 (en) * 2010-03-31 2012-12-18 Xerox Corporation Method and system for document annotation
US9645986B2 (en) * 2011-02-24 2017-05-09 Google Inc. Method, medium, and system for creating an electronic book with an umbrella policy
US9223769B2 (en) * 2011-09-21 2015-12-29 Roman Tsibulevskiy Data processing systems, devices, and methods for content analysis

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04310997A (ja) * 1991-04-09 1992-11-02 Omron Corp 画像表示方法およびその装置
JP2005159850A (ja) * 2003-11-27 2005-06-16 Seiko Epson Corp 画像と文字列の合成
JP2007004677A (ja) * 2005-06-27 2007-01-11 Seiko Epson Corp コメントレイアウト装置、アルバム作成装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022004156A1 (ja) * 2020-07-01 2022-01-06 エヌ・ティ・ティ・コミュニケーションズ株式会社 情報設定制御装置、方法およびプログラム
JP7387545B2 (ja) 2020-07-01 2023-11-28 エヌ・ティ・ティ・コミュニケーションズ株式会社 情報設定制御装置、方法およびプログラム

Also Published As

Publication number Publication date
JPWO2013171857A1 (ja) 2016-01-07
US20150149883A1 (en) 2015-05-28
US9996516B2 (en) 2018-06-12
JP5753945B2 (ja) 2015-07-22

Similar Documents

Publication Publication Date Title
JP5753945B2 (ja) 画像処理装置、画像処理装置の制御方法、プログラム、及び情報記憶媒体
US8094935B2 (en) Representative color extracting method and apparatus based on human color sense and data histogram distributions
JP5883843B2 (ja) 画像評価装置,画像評価方法,画像評価プログラム,およびそのプログラムを格納した記録媒体
US20110246939A1 (en) Information Processing Method and Graphical User Interface
US20120275704A1 (en) Ranking image importance with a photo-collage
US8744178B2 (en) Information processing apparatus, information processing method and program
JP2006079220A (ja) 画像検索装置および方法
JP4591229B2 (ja) 画像処理装置、および画像処理方法、並びにコンピュータ・プログラム
JP6336406B2 (ja) 画像合成装置,画像合成方法ならびに画像合成プログラムおよびそのプログラムを格納した記録媒体
EP2843624B1 (en) Image processing device, image processing device control method, program, and information storage medium
JP6237135B2 (ja) 情報処理装置及び情報処理プログラム
JP2017084146A (ja) 情報処理装置及び情報処理プログラム
TW200937342A (en) Line drawing processor, program and line drawing processing method
US20160342291A1 (en) Electronic apparatus and controlling method thereof
US20170061642A1 (en) Information processing apparatus, information processing method, and non-transitory computer readable medium
KR20140134154A (ko) 이미지에서 객체를 추출하기 위한 방법 및 단말기
JP2009031937A (ja) 帳票画像処理装置及び帳票画像処理プログラム
JP4984606B2 (ja) デザイン制作支援装置及びデザイン制作支援プログラム
US9767579B2 (en) Information processing apparatus, information processing method, and non-transitory computer readable medium
JP4333360B2 (ja) 顔画像レイアウトシステム及び顔画像レイアウトプログラム
US20110081126A1 (en) Image processing apparatus and image processing method
JP2005293367A (ja) 画像処理方法及び装置
JP2007241370A (ja) 携帯装置及び撮像装置
JP2009277140A (ja) 情報処理装置、処理フロー作成システム、処理フロー表示方法、処理フロー表示プログラム、及び記録媒体
US20120324354A1 (en) Computer system

Legal Events

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

Ref document number: 12876960

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2014515408

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 14401117

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 12876960

Country of ref document: EP

Kind code of ref document: A1