(58)【調査した分野】(Int.Cl.,DB名)
前記切出画像領域抽出手段は、領域の一辺が同一直線上に位置する複数の前記候補領域のうち少なくとも1つを、前記切出画像領域抽出手段が前記切出画像として抽出した場合に、前記複数の候補領域のうち前記切出画像として抽出したものを除く他の前記候補領域の輪郭を形成する閉曲線と、前記候補線集合生成手段により生成された前記候補線集合に含まれる前記候補線との重なり度合いが前記第1割合値よりも小さな予め設定された第2割合値以上である場合に、前記候補領域を前記切出画像として抽出する、請求項4〜請求項7のいずれか1項に記載の画像処理装置。
前記切出画像領域抽出手段により抽出された前記切出画像に対して、画像解析をして解析対象画像に対するタグを付与するタグ付け処理装置によって付与されたタグを取得するタグ取得手段と、
前記タグ取得手段により取得した前記タグに基づいて、前記切出画像を判定する切出画像判定手段と、
を備える請求項1〜請求項10のいずれか1項に記載の画像処理装置。
【発明を実施するための形態】
【0020】
以下、本発明を実施するための形態について、図を参照しながら説明する。なお、これは、あくまでも一例であって、本発明の技術的範囲はこれに限られるものではない。
(実施形態)
<画像処理装置1>
図1は、本実施形態に係る画像処理装置1の機能ブロックを示す図である。
図2Aは、本実施形態に係る領域関連処理部13の機能ブロックを示す図である。
図2Bは、本実施形態に係る線関連処理部16の機能ブロックを示す図である。
図2Cは、本実施形態に係る重なり度関連処理部18の機能ブロックを示す図である。
図3から
図5までは、画像データでの具体例を示す図である。
画像処理装置1は、画像データからその画像データに含まれる複数の画像データを切出画像として切り出す処理を行う装置である。そして、画像処理装置1は、切出画像が適切であるか否かを、当該切出画像をそれぞれ、タグ付けエンジンにより解析することによって得られるタグの内容が妥当であるか否かによって判定する。
画像処理装置1は、例えば、サーバである。画像処理装置1は、その他、パーソナルコンピュータ(PC)等であってもよい。画像処理装置1は、1台のコンピュータで構成されていてもよいし、複数台のコンピュータで構成されていてもよい。複数台のコンピュータを用いる場合には、これらのコンピュータはインターネットやイントラネット等の通信ネットワークを介して接続される。また、画像処理装置1は、例えばクラウド上に設けられる仮想サーバ(仮想マシン)として構成してもよい。
【0021】
図1に示すように、画像処理装置1は、制御部10と、記憶部30と、通信インタフェース部39とを備える。また、画像処理装置1は、さらにキーボードやマウス等の入力装置と、ディスプレイやプリンタ等の出力装置と(いずれも図示せず)を備えるようにしてもよい。
制御部10は、画像処理装置1の全体を制御する中央処理装置(CPU)である。制御部10は、記憶部30に記憶されているオペレーティングシステム(OS)やアプリケーションプログラムを適宜読み出して実行することにより、上述したハードウェアと協働し、各種機能を実行する。
【0022】
具体的には、本実施形態では、プログラムをコンピュータに実行させることによって、画像処理装置1を実現する態様を例にあげて説明する。プログラムは、コンパクトディスク、フレキシブルディスク、ハードディスク、光磁気ディスク、ディジタルビデオディスク、磁気テープ、ROM(Read Only Memory)、EEOPROM(Electrically Erasable Programmable ROM)、フラッシュメモリ、半導体メモリ等のコンピュータ読み取り可能な非一時的(non−transitory)情報記録媒体に記録することができる。この情報記録媒体は、コンピュータとは独立して配布・販売することができる。
【0023】
一般には、コンピュータは、非一時的情報記録媒体に記録されたプログラムを、記憶部30に含まれる一時的(temporary)記憶装置であるRAM(Random Access Memory)に読み出してから、制御部10としてのCPUが読み出されたプログラムに含まれる指令を実行する。
【0024】
なお、プログラムは、プログラムが実行されるコンピュータとは独立して、コンピュータ通信網等の一時的伝送媒体を介して、プログラム配布サーバ等からコンピュータ等へ配布・販売することができる。
【0025】
また、プログラムを、電子回路の動作レベル記述用のプログラミング言語によって記述することも可能である。この場合には、電子回路の動作レベル記述用のプログラミング言語によって記述されるプログラムから、電子回路の配線図やタイミングチャート等、各種の設計図が生成され、当該設計図に基づいて、上記の画像処理装置1を構成する電子回路を作成することができる。例えば、電子回路の動作レベル記述用のプログラミング言語によって記述されるプログラムから、FPGA(Field Programmable Gate Array)技術によって再プログラム可能なハードウェア上に、上記画像処理装置1を、構成することができるほか、ASIC(Application Specific Integrated Circuit)技術によって、特定用途専用の電子回路を構成することも可能である。
【0026】
以上のように、画像処理装置1は、制御部10が各構成部を制御することにより、本実施形態に説明する各処理を実行するように構成される。制御部10の詳細については、後述する。
【0027】
記憶部30は、制御部10が各種の処理を実行するために必要なプログラム、データ等を記憶するためのハードディスク、半導体メモリ素子等の記憶領域である。
記憶部30は、プログラム記憶部31と、画像データ記憶部32と、切出画像データ記憶部33とを備える。
【0028】
プログラム記憶部31は、各種のプログラムを記憶する記憶領域である。プログラム記憶部31は、画像処理プログラム31aを記憶している。画像処理プログラム31aは、画像処理装置1の制御部10が実行する各種機能を行うためのプログラムである。画像処理プログラム31aは、予め画像処理装置1にインストールされている。
画像データ記憶部32は、画像データを記憶する記憶領域である。
切出画像データ記憶部33は、切出画像データを記憶する記憶領域である。
通信インタフェース部39は、通信ネットワークを介して他の装置(例えば、イメージスキャナ(以降、単に「スキャナ」という。)や後述するタグ処理装置等)との通信を行うためのインタフェース部である。
【0029】
図1に示すように、制御部10は、画像データ取得手段としての画像データ取得部11と、候補領域抽出手段としての候補領域抽出部12と、領域関連処理部13と、候補領域集合手段としての候補領域集合生成部14と、候補線抽出手段としての候補線抽出部と、線関連処理部16と、候補線集合生成手段としての候補線集合生成部17と、重なり度関連処理部18と、切出画像領域抽出手段としての切出画像領域抽出部19と、タグ取得手段としてのタグ取得部20と、切出画像判定手段としての切出画像判定部21とを備える。
【0030】
[画像データ取得部11について]
画像データ取得部11は、画像データを取得する。ここで、取得する画像データは、例えば、パンフレットの見開きページやチラシ等をスキャンして得られる1枚の大きな画像データである。
図3に、取得する画像データ40の例を示す。
図3に示す画像データ40は、温泉に関するパンフレットの見開きページを1枚の大きな画像データにしたものである。画像データ40は、文字や写真を含む1枚の大きな画像データであり、文字や写真を区別しない、1つの画像データである。
画像データ取得部11は、例えば、通信インタフェース部39を介して、スキャナから画像データを受け付けることで取得してもよいし、スキャナから受け付けた画像データを画像データ記憶部32に記憶しておき、その中から1つの画像データを取得してもよい。
また、画像データ取得部11は、例えば、通信インタフェース部39を介して、端末装置(図示せず)からアップロードされる画像データを取得するようにしてもよい。
【0031】
また、画像データ取得部11は、画像データ記憶部32に記憶されている画像データのうち、画像処理装置1のユーザによって指定された画像データを取得してもよい。また、画像データ取得部11は、画像データ記憶部32に記憶されている複数の画像データのうち、切出画像処理を行っていない画像データを1つ取得してもよい。
【0032】
[候補領域抽出部12について]
候補領域抽出部12は、取得した1枚の大きな画像データから検出可能なオブジェクトを囲む領域(以下「候補領域」という)を抽出する。ここで、オブジェクトとは、1枚の大きな画像データから検出可能であり、例えば、画像特徴量が類似したひとかたまりを示す。
1枚の大きな画像データからオブジェクトを囲む領域を抽出する手法としては、種々の公知の手法を用いることができる。
【0033】
画像データからオブジェクトを囲む領域を抽出する例として、「J.R.R. Uijlings, K.E.A. van de Sande, T. Gevers, and A.W.M. Smeulders, “Selective Search for Object Recognition”, Technical Report 2012, submitted to IJCV」インターネット〈URL:http://koen.me/research/pub/uijlings−ijcv2013−draft.pdf〉(以下、文献Aという。)に記載されたものがある。
文献Aに記載の手法によれば、1枚の大きな画像データに対して、ピクセルレベルで類似する領域をグルーピングしていくことで、オブジェクトを囲む領域を抽出する。
【0034】
具体的には、例えば、1枚の大きな画像データを既存のアルゴリズムにより1番目の小領域への分割を行い、最初の小領域集合において、すべての隣同士の小領域間で、所定の類似度パラメータによる類似度を算出することで、最も類似する隣同士の小領域をグループ化して、2番目の小領域集合を生成する。その後、上記と同様に、2番目の小領域集合において、すべての隣同士の2番目の小領域間で、所定の類似度パラメータによる類似度を算出することで、最も類似する隣同士の2番目の小領域をグループ化して、3番目の小領域集合を生成する。このように、候補領域抽出部12は、反復的に処理をすることで、候補領域を抽出することができる。
【0035】
そして、このような1枚の大きな画像データに対する処理として、例えば異なる色空間(カラースペース)、異なる類似度パラメータ、及び1番目の異なる小領域分割手法による異なる小領域等、といった多様化したパラメータによる算出を行うことで、多様なパラメータによる複数の候補領域を抽出することができる。
なお、画像データからオブジェクトを囲む領域を抽出する他の例としては、例えば、BING(Binarized Normed Gradients for Objectness Estimation)等がある。
【0036】
図4Aは、
図3に示す画像データ40に含まれるオブジェクトを囲む領域を矩形51で表した画像データ50の例を示す。
図4Aに示された画像データ50の各矩形51は、候補領域抽出部12が抽出した各オブジェクトを囲んでいる。
なお、候補領域抽出部12が類似する小領域をグルーピングする際に生成する候補領域の形状として、典型的には、矩形領域とするが、これに限定されない。例えば、候補領域の形状として円領域や、楕円領域とするようにしてもよい。
【0037】
[領域関連処理部13について]
図1に戻り、領域関連処理部13は、抽出したオブジェクトを囲む領域に関連する処理を行う。
図2Aに示すように、領域関連処理部13は、領域面積算出手段としての領域面積算出部131と、歪み判定手段としての歪み判定部132と、歪み補正手段としての歪み補正部133と、縦幅横幅比率算出手段としての縦幅横幅比率算出部134と、を備える。
【0038】
領域面積算出部131は、候補領域抽出部12により抽出された候補領域の面積を算出する。領域面積算出部131により算出される、候補領域の面積が予め設定される第1の面積値(例えば、1枚の大きな画像データの面積値の1/2)を超える場合、当該候補領域は、1枚の大きな画像に入っている個々の小さな画像(写真等)の領域ではないと推測することができる。ここで、第1面積値は、予め決められた値であり、例えば、画像データの大きさに対して決定されるものであってもよい。
【0039】
歪み判定部132は、候補領域抽出部12により抽出された候補領域の輪郭に歪みがあるか否かを判定する。
歪み補正部133は、歪み判定部132により候補領域の輪郭に歪みがあると判定された場合、当該候補領域の輪郭を線形に補正する。より具体的には、候補領域抽出部12により抽出された領域が矩形領域の場合、候補領域の輪郭を線分に補正し、歪みのない候補領域の輪郭に整える。
【0040】
縦幅横幅比率算出部134は、候補領域抽出部12により抽出された候補領域の縦幅と横幅の比率を算出する。縦幅横幅比率算出部134により算出される、候補領域の縦幅と横幅との比率が一定値以上の細長い矩形領域の場合、当該候補領域は、1枚の大きな画像に入っている個々の小さな画像(写真等)の領域ではないと推測することができる。
【0041】
[候補領域集合生成部14について]
図1に戻り、候補領域集合生成部14は、候補領域抽出部12により抽出された候補領域に基づいて、候補領域からなる集合(以下、「候補領域集合」という。)を生成する。
ここで、候補領域集合生成部14は、候補領域抽出部12により抽出された候補領域のうち、領域面積算出部131により算出される候補領域の面積が予め設定される第1の面積値を超える候補領域を削除するようにしてもよい。
また、候補領域集合生成部14は、候補領域抽出部12により抽出された候補領域のうち、縦幅横幅比率算出部134により算出される候補領域の縦幅と横幅との比率が一定値以上となる矩形領域となる候補領域を削除するようにしてもよい。
【0042】
このように、候補領域集合生成部14は、候補領域抽出部12により抽出された候補領域に基づいて、候補領域集合を生成することができる。
また、候補領域集合生成部14は、候補領域抽出部12により抽出された候補領域のうち、面積が予め設定される第1の面積値を超える候補領域及び/又は縦幅と横幅との比率が一定値以上となる候補領域を事前に削除して、1枚の大きな画像データからの切り出しの対象外にすることができる。
それにより、画像処理装置1が、1枚の大きな画像からその画像に含まれる複数の小さな画像(写真等)を切り出す際の処理の負荷を軽減することができる。
以上により、画像データ取得部11により取得される1枚の大きな画像からその画像に含まれる複数の小さな画像(写真等)の候補となる複数の候補領域の集合を生成することができる。
【0043】
この候補領域集合生成部14の処理によって得られる画像データ55を、
図4Bに示す。画像データ55に含まれる矩形56と、
図4Aに示す画像データに含まれる矩形51とを比較すると、矩形56の数は、矩形51の数よりも少ない。これは、候補領域集合生成部14が、面積と、縦幅及び横幅の比率とによって対象外になった矩形51を除いたためである。
【0044】
次に、画像データ取得部11により取得される1枚の大きな画像から、線分及び円弧の線を抽出し、候補領域の輪郭候補となる候補線の集合を生成する機能について説明する。
【0045】
[候補線抽出部15について]
候補線抽出部15は、画像データ取得部11により取得される1枚の大きな画像データに含まれる線分及び円弧の少なくとも一方の線を候補線として抽出する。ここで、候補線とは、例えば、線分や、円弧をいう。
画像データから候補線を抽出する手法としては、種々の公知術を用いることができる。
画像データから線分を抽出する公知技術として、LSD(LineSegmentDetector)が挙げられる。LSDは、例えば、「Rafael Grompone von Gioi, J er emie Jakubowicz, Jean−Michel Morel, and Gregory Randall, “LSD: a Line Segment Detector”, Published in Image Processing On Line」インターネット〈http://www.ipol.im/pub/art/2012/gjmr−lsd/article.pdf〉(以下、文献Bという。)に記載されているように公知の技術である。具体的には、画像データの画素ごとの周波数方向を計算し、近傍画像と同じ周波数方向の画素をグルーピングして線分にするものである。
【0046】
また、画像データから線分又は円弧を抽出する公知技術として、LSDの外に、当業者にとって公知のHough(ハフ)変換を用いてもよい。
具体的には、画像データに含まれる線分又は円弧を検出するために、例えば公知のラプラシアン変換、Sobel法又はCanny法等により、エッジ画像を生成し、生成したエッジ画像から公知のHough変換により線分又は円弧を抽出することができる。
【0047】
図5Aに、候補線抽出部15により、画像データ取得部11により取得される1枚の大きな画像データに含まれる線分を抽出した一例を示す。
図5Aは、
図3に示す画像データ40から線分61を抽出したものである。
図5Aに示すように、画像データ60は、複数の線分61を有する。線分61は、その1つ1つがまっすぐな線である。
【0048】
[線関連処理部16について]
線関連処理部16は、候補線抽出部15により抽出した画像データに含まれる線に関連する処理を行う。
図2Bに示すように、線関連処理部16は、線補正手段としての線補正部161と、線角度算出部162と、線角度判定手段としての線角度判定部163とを備える。
【0049】
線補正部161は、候補線抽出部15により抽出した画像データに含まれる線分及び円弧の少なくとも一方の線の線幅を予め設定された太さに補正する。ここで、線分の線幅を太く補正するのは、後述する重なり度合いを判定する処理において、その度合いをより明確にするためである。
【0050】
線角度算出部162は、候補線抽出部15により抽出した画像データに含まれる線分と、候補領域集合生成部14により生成された候補領域集合に含まれる候補領域の辺との角度を算出する。
【0051】
線角度判定部163は、候補線抽出部15により抽出した画像データに含まれる線分と、候補領域集合生成部14により生成された候補領域集合に含まれる候補領域の辺との角度が予め設定された第1角度以下か否かを判定する。
ここで、第1角度とは、例えば、10度等の鋭角をいう。なお、線分が候補領域の辺と並行である場合には、算出した角度は0度になる。
線角度判定部163により、候補線抽出部15により抽出した画像データに含まれる線分と、候補領域集合生成部14により生成された候補領域集合に含まれる候補領域の辺との角度が予め設定された第1角度を超える場合は、当該線分と候補領域の辺とは重ならないと推測することができる。
【0052】
[候補線集合生成部17について]
図1に戻り、候補線集合生成部17は、候補線抽出部15により抽出された候補線に基づいて、候補線の集合を生成する。
候補線集合生成部17は、線補正部161により補正された候補線を、補正前の候補線に替えて、候補線集合に含む候補線にするようにしてもよい。
また、候補線集合生成部17は、候補線抽出部15により抽出した画像データに含まれる線分の集合から、候補領域集合生成部14により生成された候補領域集合に含まれる候補領域の辺との角度が予め設定された第1角度を超える線分となる候補線を削除するようにしてもよい。
それにより、画像処理装置1が、1枚の大きな画像からその画像に含まれる複数の小さな画像(写真等)を切り出す際の処理の負荷を軽減することができる。
以上により、画像データ取得部11により取得される1枚の大きな画像からその画像に含まれる複数の小さな画像(写真等)の候補となる複数の候補領域の集合を生成することができる。
【0053】
図5Bは、線角度判定部163により候補領域集合生成部14により生成された候補領域集合に含まれる候補領域の辺との角度が予め設定された第1角度を超える線分となる候補線を削除された線分66のみを含む画像データ65を示す。
ここで、画像データ65に含まれる線分66と、
図5Aに示す画像データ60に含まれる線分61とを比較すると、線分66の数は、線分61の数よりも少ない。これは、候補線集合生成部17が、第1角度より大きい角度の線分61を除いたためである。つまり、
図5Bに示す画像データ65は、画像データ60に含まれる斜め方向の線分61が削除されている。
【0054】
以上により、画像処理装置1は、画像データ取得部11により取得される1枚の大きな画像から、線分及び円弧の線を抽出し、候補領域の輪郭候補となる候補線の集合を生成することができる。
【0055】
次に、候補領域集合生成部14により生成される候補領域の集合と、候補線集合生成部17により生成される候補線の集合との間で、その重なり度合いを検出することにより、1枚の大きな画像からその画像に含まれる複数の小さな画像(写真等)を切り出す機能について説明する。
【0056】
[重なり度関連処理部18について]
重なり度関連処理部18は、候補領域集合生成部14により生成された候補領域の輪郭を形成する閉じた線(「囲い線」ともいう。)と、候補線集合生成部17により生成された候補線との重なり度合いに関連する処理を行う。
図2Cに示すように、重なり度関連処理部18は、重なり度算出手段としての重なり度算出部181と、重なり度判定手段としての重なり度判定部182とを備える。
【0057】
重なり度算出部181は、候補領域集合生成部14により生成された候補領域の囲い線と、候補線集合生成部17により生成された候補線との重なり度合いを算出する。具体的には、重なり度算出部181は、各候補領域の囲い線のうち、候補線集合生成部17により生成された候補線との重なる部分の割合である重なり度合いを算出する。例えば、ある候補領域の重なり度合いが70%とは、当該候補領域の囲い線のうち70%の線が、候補線集合生成部17により生成された候補線に重なる状態にあることを意味する。
【0058】
重なり度判定部182は、候補領域集合生成部14により生成された各候補領域の囲い線について、重なり度算出部181により算出された候補線との重なり度合いが、予め設定された所定の第1割合値以上であるか否かを判定する。例えば、第1割合値として50%とすると、重なり度判定部182は、候補領域の囲い線の50%以上が、候補線集合生成部17により生成された候補線と重なるか否かを判定する。なお、第1割合値は、この値に限定されない。画像の特性等に応じて適宜設定することができる。
【0059】
[切出画像領域抽出部19について]
図1に戻り、切出画像領域抽出部19は、重なり度判定部182による判定結果に応じて、候補領域を切出画像候補として抽出する。
具体的には、切出画像領域抽出部19は、重なり度判定部182により重なり度合いが第1割合値以上であると判定された候補領域を、切出画像候補として抽出し、切出画像候補の集合を生成する。
また、切出画像領域抽出部19は、切出画像候補の集合に含まれる他の候補領域と1辺が同一直線上に位置する候補領域については、その重なり度合いが第1割合値未満であっても、予め設定される第2割合値以上である場合、切出画像候補として抽出し、切出画像候補の集合に加えるように構成することができる。
すなわち、切出画像領域抽出部19は、切出画像候補の集合に含まれる他の候補領域と1辺が同一直線上に位置する候補領域を抽出し、抽出された候補領域の重なり度合いが第2割合値以上であると判定された候補領域を、切出画像候補として、切出画像候補の集合に追加することができる。
【0060】
また、切出画像領域抽出部19は、重なり度算出部181により算出された候補線との重なり度合いが第2割合値以上かつ第1割合値未満の候補領域を抽出し、抽出された候補領域が、切出画像候補の集合に含まれる他の候補領域と1辺が同一直線上に位置する場合に、切出画像候補として、切出画像候補の集合に追加するように構成してもよい。
ここで、第2割合値は、第1割合値よりも小さな値であり、例えば30%とすると、切出画像候補の集合に含まれる他の候補領域と1辺が同一直線上に位置する候補領域であって、その重なり度合いが30%以上の候補領域が切出画像候補として、切出画像候補の集合に追加される。なお、第2割合値は、この値に限定されない。画像の特性等に応じて適宜設定することができる。
【0061】
[切出画像領域抽出部19の変形例]
なお、切出画像領域抽出部19は、候補領域抽出部12により抽出された候補領域をそのまま切出画像候補として抽出しているが、切出画像候補の抽出はこれに限定されない。
切出画像領域抽出部19は、重なり度判定部182により重なり度合いが所定の割合値以上であると判定された候補線に基づいて切出画像候補を抽出するように構成してもよい。具体的には、候補領域の囲い線と重なる候補線を交差させ、又は延長させた後に交差させることで形成される領域を、切出画像候補として抽出するようにしてもよい。
【0062】
[タグ取得部20について]
タグ取得部20は、切出画像領域抽出部19によって抽出作成された切出画像候補の集合に含まれる各切出画像候補に関して、例えば通信インタフェース部39を介してタグ付けエンジンとしてのタグ処理装置(図示せず)に対してタグ付け処理を要求し、当該切出画像候補のタグ(分類、カテゴリ等)を取得する。
ここでタグ付けエンジンは、画像データに対して、画像解析によってタグを付与するものであって、種々の公知の技術を用いることができる。
画像解析によってタグを得るタグ付けエンジンの例としては、例えば「Kaiming He Xiangyu Zhang Shaoqing Ren Jian Sun, “Deep Residual Learning for Image Recognition”, Microsoft Research」(以下、文献Cという。)に記載されたものがある。文献Cに記載の手法によれば、対象画像データの中に写っているものを、画像解析をし、画像をモデリングした学習器との比較によって推定したタグを付与する。
タグ取得部20は、タグ付けエンジンの提供する画像認識APIを介して、各切出画像候補のタグを取得することができる。
【0063】
[切出画像判定部21について]
切出画像判定部21は、タグ取得部20によって取得したタグに基づいて、切出画像候補を切出画像にするか否かを判定する。
より具体的には、切出画像判定部21は、各切出画像候補に対して取得されたタグが複数の関連しないタグを取得した場合、当該切出画像候補は、1つの小さな画像(写真等)ではないと判定する。
取得された複数のタグが関連性を有するか否かは、例えば、タグの関連情報を記憶したタグデータベース(図示せず)を予め用意しておき、切出画像判定部21は、取得した複数のタグをこのタグデータベースと照合し、複数のタグが、例えば、関連する又は類似するカテゴリに含まれるか否かによって判断してもよい。なお、タグデータベースは、画像処理装置1に有してもよいし、通信インタフェース部39を介して接続可能な外部サーバ等に有するものであってもよい。
【0064】
具体例を用いて説明すると、例えば、食べ物と旅館とに関する実際には2つの写真が、上述の処理によって1つの画像として認識され、切出画像候補として抽出された場合について検討する。これは、食べ物と旅館とに関する写真との間に空白部分がないため、上述の処理において、1つの切出画像候補にされたものである。タグ取得部20は、「食べ物」と「旅館」のような、相互に関連のないタグを取得する。そこで、切出画像判定部21は、上述の処理によって、これらのタグが相互に関連のないタグであると判断されるため、1つの小さな画像ではないと判定し、切出画像にしない。
【0065】
切出画像判定部21によって、切出画像候補が1つの小さな画像ではないと判定された場合に、制御部10は、例えば、切出画像候補の重なり度合いを再度調整することで、2つの画像として認識させることができる。
また、切出画像判定部21によって、切出画像候補が1つの小さな画像ではないと判定された場合に、制御部10は、切出画像候補の重なり度合いを再度調整する代わりに、認識の候補(2つとするか、又は、1つとするか等)のみを結果として出力し、さらにタグ付けの結果も考慮して、認識の候補のうちいずれの候補にするかを決めてもよい。
さらに、切出画像判定部21によって、切出画像候補が1つの小さな画像ではないと判定された場合に、制御部10は、ディスプレイやプリンタ等の出力装置にエラー出力をすることで、ユーザに判断させるようにしてもよい。
以上のように、画像処理装置1は、切出画像判定部21による判定結果によって、1つの切出画像候補を、複数の切出画像にすることができる。
【0066】
また、画像処理装置1は、切出画像判定部21による判定結果によって、複数の切出画像候補を、1つの切出画像にすることもできる。これは、実際には1つの写真が、上述の処理によって2以上の画像として認識され、切出し画像候補として抽出された場合である。このような場合には、2以上の切出画像候補が連続しており、各切出画像候補に対して得られたタグが同じか、又は、非常に関連したものになる。その場合には、画像処理装置1は、複数の切出画像候補を、1つの切出画像にすることができる。
さらに、画像処理装置1は、切出画像判定部21による判定結果によって、間違った領域になっている切出画像候補を、正しい領域に修正した上で切出画像にすることもできる。
【0067】
以上のように、本実施形態に係る画像処理装置1によれば、1枚の大きな画像からその画像に含まれる複数の小さな画像(写真等)を切り出すことを可能とする。
【0068】
<画像処理装置1の処理>
次に、本実施形態にかかる画像処理装置1による画像処理手順について図を参照しながら説明する。ここで、画像処理装置1は、候補領域の集合を領域関連処理部13の処理結果に基づいて生成すると共に、候補線の集合を線関連処理部16の処理結果に基づいて生成するものとする。
図6A及び
図6Bは、画像処理の全体的な手順を示すフローチャートであり、
図7及び
図8は、当該画像処理のうち、特定の処理に係る処理手順を示すフローチャートである。なお、ここで説明する処理の流れは、上述した各機能部の機能を実現するための処理の流れ(フローチャート)の一例であって、このフローチャートに限定されない。
【0069】
画像処理は、画像処理装置1がコンピュータ等を用いて構築されている場合、ユーザが例えば、図示しない入力装置で画像処理の開始指令を与え、かかる開始指令信号を制御部10が受信し、プログラム記憶部31に格納されている本実施形態にかかる画像処理プログラム31aが起動されることで開始される。
【0070】
図6AのステップS(以下、「S」という。)10において、画像処理装置1の制御部10(画像データ取得部11)は、画像データ記憶部32に記憶されている画像データを1つ取得する。ここで、制御部10は、画像データ記憶部32に記憶されている画像データのうち、画像処理装置1のユーザによって指定された画像データを取得してもよい。また、制御部10は、画像データ記憶部32に記憶されている複数の画像データのうち、切出画像処理を行っていない画像データを1つ取得してもよい。さらに、制御部10は、通信インタフェース部39を介して、図示しないスキャナから受信した画像データを取得してもよい。
【0071】
S11において、制御部10(候補領域抽出部12)は、取得した画像データからオブジェクトを囲む領域を抽出する。
ここで、画像データからオブジェクトを囲む領域を抽出する手法としては、上述したように種々の公知の技術を用いることができる。
制御部10(候補領域抽出部12)は、画像データに対して、例えば、“Selective Search”を適用することで、画像データに含まれるオブジェクトを囲む領域を、複数得ることができる。ここで、制御部10は、例えば、候補領域管理テーブルを記憶部30に有するようにして、取得したオブジェクトを囲む領域を、その位置情報と共に記憶させてもよい。
【0072】
S12において、制御部10(領域関連処理部13)は、候補領域に関する処理を行う。
ここで、候補領域に関する処理について、
図7に基づき説明する。
図7のS30において、制御部10(歪み判定部132)は、抽出したオブジェクトを囲う領域の輪郭に歪みがあるか否かを判定する。歪みがある場合とは、例えば、“Selective Search”とは異なる手法でオブジェクトを抽出した場合や、オブジェクトを抽出した際に、矩形以外の形状で囲んだ場合をいう。歪みがある場合(S30:YES)には、制御部10は、処理をS31に移す。他方、歪みがない場合(S30:NO)には、制御部10は、処理をS32に移す。
S31において、制御部10(歪み補正部133)は、歪みがあった輪郭を線分に補正することで、輪郭が矩形を形成するようにする。ここで、制御部10は、線分を交差させ、又は線分を延長させた後に交差させることで矩形を形成するようにしてもよい。この処理によって、オブジェクトを囲う領域を、矩形で表すことができる。
【0073】
S32において、制御部10(領域面積算出部131)は、抽出したオブジェクトを囲む領域の面積を算出する。ここで、制御部10は、候補領域管理テーブルの該当のオブジェクトを囲む領域に対応付けて、算出した面積を記憶させてもよい。
S33において、制御部10(縦幅横幅比率算出部134)は、矩形の縦幅と横幅との比率を算出する。ここで、制御部10は、候補領域管理テーブルの該当のオブジェクトを囲む領域に対応付けて、算出した比率を記憶させてもよい。
S34において、制御部10(候補領域集合生成部14)は、所定の矩形領域を、切出画像の候補である候補領域とする。ここで、制御部10は、所定の矩形領域を、その面積と、縦幅及び横幅の比率とによって候補領域とする。
具体的には、制御部10は、S32で算出した面積が第1面積値を超えるものは、そのオブジェクトを囲む領域を候補領域とはしない。ここで、第1面積値は、上述したように予め決められた値であり、例えば、画像データの大きさに対して決定されるものであってもよいし、パラメータとして与えてもよい。画像処理装置1は、この処理によって、画像データに含まれる大きな矩形領域を、切り出しの対象外にすることができる。
【0074】
また、制御部10は、S33で算出した矩形の縦幅と横幅との比率が一定値以上のものは、そのオブジェクトを囲む領域を、候補領域とはしない。画像処理装置1は、この処理によって、画像データに含まれる細長い矩形領域を、切り出しの対象外にすることができる。
ここで、制御部10は、候補領域管理テーブルから、面積が第1面積値を超えるオブジェクトを囲む領域と、比率が一定値以上のオブジェクトを囲む領域とのレコードを削除するようにしてもよい。
その後、制御部10は、この候補領域取得処理を終了し、処理を
図6Aに移す。
【0075】
図6Aに戻り、S13において、制御部10は、候補線取得処理を行う。
ここで、候補線取得処理について、
図8に基づき説明する。
図8のS40において、制御部10(候補線抽出部15)は、画像データに含まれる線分を抽出する。
ここで、画像データからオブジェクトを抽出する手法としては、上述したように種々の公知の技術を用いることができる。
制御部10(候補線抽出部15)は、画像データに対して、例えば、LSD(LineSegmentDetector)を適用することで、画像データに含まれる線分を複数得る。ここで、制御部10は、例えば、候補線管理テーブルを記憶部30に有するようにして、取得した線分を、その位置情報と共に記憶させてもよい。
【0076】
S41において、制御部10(線角度算出部162)は、抽出した線分のすべてにおいて、1つの候補領域の各辺との角度を算出する。ここで、候補領域取得処理(
図6AのS12)において取得した各候補領域は、矩形であるため、制御部10は、1つの候補領域の各辺と、抽出した各線分との角度を算出すれば足りる。ここで、制御部10は、候補線管理テーブルの該当の線分に対応付けて、算出した角度を記憶させてもよい。
S42において、制御部10(候補線集合生成部17)は、算出した角度が線角度判定部163により第1角度以下であると判定される線分を取得する。具体的には、制御部10(候補線集合生成部17)は、候補線の集合から、候補領域集合生成部14により生成された候補領域集合に含まれる候補領域の辺との角度が第1角度を超える線分となる候補線を削除する。ここで、第1角度は、上述したように予め決められた値であり、例えば、パラメータとして与えてもよい。ここで、制御部10は、候補線管理テーブルから、角度が第1角度を超える線分のレコードを削除するようにしてもよい。なお、線分が候補領域の辺と並行である場合には、算出した角度は0度になる。
【0077】
S43において、制御部10(線補正部161)は、候補線集合に含む候補線の線分の線幅を、所定の太さに補正して、制御部10(候補線集合生成部17)により補正前の候補線に替えて、候補線集合に含む候補線にする。その後、制御部10は、この候補線取得処理を終了し、処理を
図6Aに移す。
【0078】
図6Aに戻り、S14において、制御部10は、候補領域を1つ選択する。
S15において、制御部10(重なり度算出部181)は、選択した候補領域の囲い線である矩形と、候補線との重なり度合いを算出する。ここで、制御部10は、候補領域管理テーブルの該当のオブジェクトを囲む領域、つまり、選択した候補領域に対応付けて、候補線管理テーブルの各線分である候補線との重なり度合いの値を記憶させてもよい。
S16において、制御部10(重なり度判定部182)は、算出した重なり度合いが第1割合値以上であるか否かを判断する。ここで、第1割合値は、予め定められた値であり、例えば、50%といった値である。第1割合値以上である場合(S16:YES)には、制御部10は、処理をS17に移す。他方、第1割合値未満である場合(S16:NO)には、制御部10は、処理をS18に移す。
【0079】
S17において、制御部10(切出画像領域抽出部19)は、候補領域を切出画像候補にする。そして、制御部10は、切出画像候補を、記憶部30に一時記憶させる。ここで、制御部10は、候補領域管理テーブルの該当の候補領域に、切出画像候補であることを示すフラグを付与してもよい。
S18において、制御部10は、すべての候補領域について処理をしたか否かを判断する。すべての候補領域について処理をした場合(S18:YES)には、制御部10は、処理を
図6BのS19に移す。他方、すべての候補領域について処理をしていない場合(S18:NO)には、制御部10は、処理をS14に移し、未処理の他の候補領域について、この処理を繰り返す。
【0080】
図6BのS19において、制御部10は、
図6AのS15によって算出した重なり度合いが第1割合値未満の候補領域の一辺と同一直線上に位置する他の候補領域が、切出画像候補になっているか否かを判断する。この処理に関して、制御部10は、候補領域管理テーブルと、候補線管理テーブルを用いて行うことができる。切出画像候補になっている場合(S19:YES)には、制御部10は、処理をS20に移す。他方、切出画像候補になっていない場合(S19:NO)には、制御部10は、処理をS22に移す。
S20において、制御部10(切出画像領域抽出部19)は、切出画像候補になっている他の候補領域と一辺が同一直線上に位置する候補領域の重なり度合いが、第1割合値より小さい第2割合値以上であるか否かを判断する。ここで、第2割合値は、予め定められた値であり、例えば、30%といった値である。第2割合値以上である場合(S20:YES)には、制御部10は、処理をS21に移す。他方、第2割合値未満である場合(S20:NO)には、処理をS22に移す。
【0081】
S21において、制御部10は、第2割合値以上であったその候補領域を、切出画像候補にする。そして、制御部10は、切出画像候補を、記憶部30に一時記憶させる。ここで、制御部10は、候補領域管理テーブルの該当の候補領域に、切出画像候補であることを示すフラグを付与してもよい。その際、制御部10は、第2割合値以上であったものであることを表すために、上述したS17で付与したフラグとは異なるフラグを付与してもよい。
このように、制御部10は、候補領域管理テーブルと、候補線管理テーブルを使用して処理をすることで、効率的な処理を行うことができる。
図9は、切出画像候補71を示した画像データ70を示す。上述の処理に示すように、制御部10は、候補領域と、候補線とを取得して、その重なり度合いによって、候補領域を切出画像候補71にする。
【0082】
図6Bに戻り、S22において、制御部10は、記憶部30に一時記憶された各切出画像候補を、通信ネットワークを介して図示しないタグ付けエンジンとしてのタグ付け処理装置に送信することで、制御部10(タグ取得部20)は、タグ処理装置から各切出画像候補に対応するタグを受信する。
ここで、切出画像候補ごとに画像解析して、タグを付与するタグ付けエンジンとしては、上述したように種々の公知の技術を用いることができる。
制御部10(タグ取得部20)は、例えば、タグ付けエンジンの提供する画像認識APIを介して、各切出画像候補のタグを取得することができる。
この処理によって、切出画像候補が温泉を表す写真の画像であった場合には、タグとして、例えば、「温泉」が切出画像候補に付与される。
【0083】
S23において、制御部10(切出画像判定部21)は、各切出画像候補について、取得したタグに基づいて切出画像にするか否かを判断する。ここで、例えば、複数の関連しないタグを取得した場合には、複数の異なる画像が連結していると考えられる。そのため、制御部10(切出画像判定部21)は、タグに基づいて切出画像にしないと判断する。切出画像にする場合(S23:YES)には、制御部10は、処理をS24に移す。他方、切出画像にしない場合(S23:NO)には、制御部10は、本処理を終了する。
S24において、制御部10(切出画像判定部21)は、切出画像にすると判断された切出画像候補を、切出画像データ記憶部33に記憶させる。その後、制御部10は、本処理を終了する。
【0084】
このように、本実施形態の画像処理装置1によれば、以下のような効果がある。
(1)画像データに対して、公知のオブジェクト抽出技術を適用して、オブジェクトを囲む候補領域を抽出し、他方、同じ画像データに対して、画像データに含まれる線分を検出する公知の線分検出技術を適用して、候補線を抽出することで、候補領域の輪郭と、候補線との重なり度合いの割合に基づいて、画像データから候補領域を切出画像として効率的に抽出することができる。
(2)候補領域から、その面積や、縦幅と横幅との比率が所定の条件を満たすものを事前に対象外にすることで、候補領域の輪郭と、候補線との重なり度合いの算出処理の負荷を軽減することができ、より高速に抽出することが可能になる。
【0085】
(3)線分が細過ぎることで候補領域の輪郭と、候補線の重なり度合いが正確に算出されない可能性がある。このため、候補線となる線分を予め太く補正しておくことで、候補領域の輪郭と、候補線との重なり度合いをより正確に算出することが可能となる。
(4)候補領域を矩形領域とし、前記候補線を線分とすることで、領域の形状が矩形となる切出画像を抽出することができる。
(5)候補領域の輪郭に歪みがある場合、予め歪みを補正しておくことで、候補線との重なり度合いの算出をより正確にすることが可能になる。
【0086】
(6)予め所定の条件を満たす線分のみに基づいて候補線を抽出することで、候補領域の輪郭と、候補線との重なり度合いの算出処理の負荷を軽減することができ、より高速に抽出することが可能になる。
(7)2つの候補領域が同一直線上に配置され、2つの候補領域のいずれか一方が切出画像として判定された場合、他方の候補領域が切出画像候補である可能性は高いと予想される。そのため、候補領域の輪郭と、候補線との重なり度合いに関する閾値の条件をゆるめることで、抽出漏れ防止を図ると共に、精度向上が可能となる。
(8)タグ(分類、カテゴリ等)により、切出画像候補を切出画像にするか否かを判断する。よって、例えば、複数の領域がつながっている画像について、1つの画像であるか否かを判断するのに使用できる。
【0087】
以上、本発明の実施形態について説明したが、本発明は上述した実施形態に限定されるものではない。また、実施形態に記載した効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、実施形態に記載したものに限定されない。なお、上述した実施形態及び後述する変形形態は、適宜組み合わせて用いることもできるが、詳細な説明は省略する。
【0088】
(変形形態)
(1)本実施形態では、画像データからオブジェクトを囲む領域として矩形領域とするものを例に説明したが、これに限定されない。例えば、円領域や、楕円領域としてもよい。そして、画像データに含まれる線分を候補線としたが、円領域や、楕円領域とした場合には、画像データに含まれる円弧や、楕円の円弧を候補線としてもよい。そのようにすることで、画像データに含まれる円形の写真や、楕円形の写真を、切出画像として取得することができる。
また、1つの画像データに対して、矩形領域とするもの、円領域とするもの及び楕円領域とするものを、順番に適用してもよい。そのようにすることで、1つの画像に様々な形状で配置された画像を切り出すことができる。
(2)本実施形態では、パンフレットをスキャンして得られた画像データを例に処理の説明をしたが、対象とする画像データは、これに限定されない。画像データに複数の画像を含むものであればどのようなものであってもよく、例えば、漫画や、新聞紙、論文、一般書籍等であってもよい。そして、新聞紙の場合には、例えば、写真のみを切り出したり、広告領域のみを切り出したりする場合に有効である。なお、一枚の紙にそれぞれの内容が独立した複数の枠が存在するようなものに対して、より適切に切出画像を取得できる。
【0089】
(3)本実施形態では、画像処理装置は、タグ付けエンジンとしてのタグ付け処理装置に対してタグの付与を依頼するものとして説明したが、これに限定されない。画像処理装置1に、タグ付け処理の機能を有するものであってもよい。
画像データから画像データに含まれる切出画像を抽出する画像処理装置1は、画像データを取得する画像データ取得部11と、画像データから検出可能なオブジェクトを囲む領域を候補領域として抽出する候補領域抽出部12と、画像データに含まれる線分及び円弧の少なくとも一方の線を候補線として抽出する候補線抽出部15と、候補領域抽出部12により抽出された候補領域の輪郭を形成する閉じた線と、候補線抽出部15により抽出された候補線との重なり度合いが、予め設定された所定の第1割合値以上であるか否かを判定する重なり度判定部182と、重なり度判定部182により第1割合値以上であると判定された場合に、候補領域を、切出画像として抽出する切出画像領域抽出部19とを備える。