以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではなく、また実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
図1は、本発明の一実施形態に係る画像出力装置10をブログに適用した場合における出力画面900の概要を示す。画像出力装置10は、モニタ等の表示装置を備えるPCおよび携帯情報端末等であってよい。そして、画像出力装置10は、インターネット上のウェブサイトにおいてウェブページのURLと共に文章等を記録するブログ等を表示装置に出力する装置であってよい。本実施形態に係る画像出力装置10は、文章中に画像を挿入する領域により近い位置に入力されたより多くの種類のキーワードに対応づけて画像出力装置10が格納している画像を自動的に選択して、当該領域に選択した画像を自動的に挿入することにより、ユーザが文章を入力する場合に、文章入力中にユーザが想起しているイメージに適切な画像を、ユーザの思考を中断させることなく、文章中においてユーザが画像の挿入を所望する位置に自動的に挿入して表示することを目的とする。
出力画面900においてユーザは、画像出力装置10に文章を入力する。例えば、ユーザは、ブログに文章を入力する場合のように、出力画面900において、文章を画像出力装置10に入力する。そして、例えば、画像出力装置10は、画像配置位置800から予め定められた範囲内に入力された文章に含まれる複数の画像の内容を示すキーワードのうち、最も画像配置位置800に近い距離に入力されたキーワード902に対応づけて格納している画像を自動的に抽出する。そして、画像出力装置10は、画像配置位置800に抽出した画像を挿入して、画像を文章とともに出力画面900に表示する。同様に、画像出力装置10は、画像配置位置802から予め定められた範囲内に入力された文章に含まれる複数の画像の内容を示すキーワードのうち、最も画像配置位置802に近い距離に入力されたキーワード904に対応づけて格納している画像を自動的に抽出する。そして、画像出力装置10は、画像配置位置802に抽出した画像を挿入して、画像を文章とともに出力画面900に表示する。
本実施形態に係る画像出力装置10は、文章中に画像を挿入する領域である画像配置位置に最も近い位置に入力されたキーワードに対応づけて画像出力装置10が格納している画像を自動的に選択する。そして、画像出力装置10は、選択した画像を画像配置位置に挿入して表示するので、ユーザが文章を入力する場合に、文章入力中にユーザが想起しているイメージに適切な画像を、ユーザの思考を中断させることなく、文章中においてユーザが画像の挿入を所望する位置に自動的に挿入して表示することができる。
図2は、本実施形態に係る画像出力装置10の機能構成の一例を示す。画像出力装置10は、文章入力部100、画像入力部102、画像配置位置入力制御部104、キーワード選択制御部106、画像格納部110、文章格納部112、画像配置位置決定部120、キーワード抽出部130、画像抽出部140、重み合計算出部150、位置重み付け決定部160、画像選択部170、キーワード頻度算出部180、キーワード重み付け決定部182、文章範囲決定部184、および画像出力部190を備える。
文章入力部100は、画像出力装置10に文章を入力する。文章入力部100は、ユーザが入力した文章をキーワード抽出部130および画像出力部190に供給する。また、文章入力部100は、文章が入力された位置を画像配置位置決定部120および文章範囲決定部184に供給する。なお、文章が入力された位置は、画像出力部190が文章および画像を出力する出力領域において入力された文章が配置される位置を、文章が入力された位置としてよい。画像入力部102は、画像出力装置10に画像を入力する。画像入力部102は、入力した画像を画像格納部110に供給する。画像格納部110は、画像の内容を示す少なくとも一つのキーワードに対応づけて画像を格納する。画像格納部110は、格納している画像を、画像抽出部140の制御に基づいて画像抽出部140に供給する。
画像配置位置入力制御部104は、入力された文章が出力される出力領域の中で、画像が配置されるべき位置である画像配置位置をユーザに入力させる。具体的には、画像配置位置入力制御部104は、出力領域内に、画像を配置すべき位置をユーザに入力させる。例えば、画像配置位置入力制御部104は、ユーザに画像の配置を所望する位置を選択させることにより、画像を配置すべき位置をユーザに入力させる。また、画像配置位置入力制御部104は、画像が配置されるべき位置が出力領域内に予め定められている複数のレイアウトをユーザに提示して、提示された複数のレイアウトの中からユーザに所望のレイアウトを選択させてもよい。なお、画像配置位置入力制御部104は、ユーザが文章を入力している場合であって、ユーザが文章の入力を完結する前に、画像配置位置をユーザに入力させてよい。また、画像配置位置入力制御部104は、ユーザが文章の入力を完結した後に、画像配置位置をユーザに入力させてもよい。係る場合において、画像配置位置入力制御部104は、画像が配置されるべき位置および画像が配置されるべき領域の大きさを、ユーザに入力させてもよい。画像配置位置入力制御部104は、ユーザが入力した画像配置位置を、画像配置位置決定部120に供給する。
画像配置位置決定部120は、入力された文章が出力される出力領域において画像が配置されるべき位置である画像配置位置を決定する。具体的には、画像配置位置決定部120は、文章入力部100から、出力領域に入力された文章が配置されている位置に関する情報を受け取る。そして、画像配置位置決定部120は、出力領域内で文章が配置されていない位置を算出して、算出した位置を画像配置位置として決定してよい。また、画像配置位置決定部120は、画像配置位置入力制御部104からユーザが入力した画像配置位置を受け取った場合には、ユーザが入力した画像配置位置を、入力された文章が出力される出力領域において画像が配置されるべき位置である画像配置位置として決定してもよい。画像配置位置決定部120は、決定した画像配置位置を位置重み付け決定部160、文章範囲決定部184、および画像出力部190に供給する。
キーワード抽出部130は、入力された文章から画像格納部110が格納しているキーワードを抽出する。具体的には、キーワード抽出部130は、文章入力部100から受け取った文章から、自然言語処理等の処理方法を用いて、画像格納部110が格納しているキーワードを抽出する。また、キーワード抽出部130は、抽出したキーワードが出力領域に配置されている位置である、キーワードの位置に関する情報をキーワードに対応づけて抽出する。更に、キーワード抽出部130は、入力された文章を複数の範囲に分割して、分割した範囲からキーワードを抽出してもよい。例えば、キーワード抽出部130は、入力された文章を、行ごとおよび段落ごとの範囲に分割して、行または段落からキーワードを抽出してもよい。キーワード抽出部130は、抽出したキーワードを画像抽出部140に供給する。また、キーワード抽出部130は、抽出したキーワードおよび抽出したキーワードの位置に関する情報を画像選択部170に供給する。更に、キーワード抽出部130は、抽出したキーワードの位置に関する情報を、位置重み付け決定部160に供給する。
文章範囲決定部184は、画像配置位置決定部120から受け取った画像配置位置から予め定められた範囲内に入力された文章を、キーワード抽出部130がキーワードを抽出する文章として決定する。具体的には、文章範囲決定部184は、文章入力部100から、入力された文章が出力領域において占める位置を受け取り、画像配置位置決定部120から、画像配置位置を受け取る。そして、文章範囲決定部184は、画像配置位置から予め定められた範囲内に入力された文章の範囲を、文章入力部100から受け取った、入力された文章の出力領域における位置から算出して、キーワード抽出部130がキーワードを抽出する文章として決定する。なお、文章範囲決定部184が定めたキーワードを抽出する文章が含まれる範囲は、画像配置位置から予め定められた距離に基づいて決定してよい。
具体的には、文章範囲決定部184は、画像配置位置から予め定められた範囲内に入力された行のうち、予め定められた数の行を、キーワードを抽出する文章が含まれる文章範囲として決定してよい。例えば、文章範囲決定部184は、画像配置位置から5行または10行等の行数を設定して、複数の行を含む文章を、キーワード抽出部130がキーワードを抽出する文章の範囲として決定してよい。なお、文章範囲決定部184が予め設定する、キーワードを抽出する文章の範囲は、段落ごとの範囲であってもよい。文章範囲決定部184は、決定した文章の範囲が出力領域に占める位置をキーワード抽出部130およびキーワード選択制御部106に供給する。なお、係る場合において、文章範囲決定部184からキーワードを抽出する文章の範囲を受け取ったキーワード抽出部130は、当該範囲から画像格納部110が格納しているキーワードを抽出する。
キーワード選択制御部106は、文章範囲決定部184から受け取った文章の範囲を除く文章の範囲から、画像格納部110が格納しているキーワードをユーザに選択させる。なお、キーワード選択制御部106は、ユーザに複数のキーワードを選択させてもよい。キーワード選択制御部106は、ユーザが選択したキーワードを、画像抽出部140に供給する。画像抽出部140は、キーワード抽出部130が抽出したキーワードのうちの少なくとも一つに対応づけて画像格納部110が格納している画像を画像格納部110に働きかけて、画像格納部110から抽出する。また、画像抽出部140は、キーワード選択制御部106から受け取ったキーワードのうちの少なくとも一つに対応づけて画像格納部110が格納している画像を画像格納部110に働きかけて、画像格納部110から抽出する。画像抽出部140は抽出した画像を、画像選択部170に供給する。また、画像抽出部140は、画像に対応づけて画像格納部110が格納しているキーワードを、重み合計算出部150に供給する。
位置重み付け決定部160は、キーワード抽出部130から受け取ったキーワードの位置に関する情報のうち、画像配置位置決定部120から受け取った画像配置位置により近い位置に入力されたキーワードに、より大きい重み付けをする。具体的には、位置重み付け決定部160は、キーワード抽出部130から受け取ったキーワードの位置と画像配置位置決定部120から受け取った画像配置位置の位置とから、キーワード抽出部130が抽出したキーワードごとに、画像配置位置から当該キーワードが出力領域に入力された位置までの距離を算出する。そして、位置重み付け決定部160は、算出した距離がより短いキーワードにより大きい重みを付ける。例えば、位置重み付け決定部160は、算出した距離の逆数を算出して、算出した値をキーワードの重みとしてもよい。また、位置重み付け決定部160は、入力された文章を複数の範囲に分割して、分割した範囲からキーワード抽出部130が抽出したキーワードのうち、画像配置位置決定部120から受け取った画像配置位置により近い範囲に入力されたキーワードに、より大きい重み付けをしてもよい。ここで、文章の行および段落は、範囲の一例である。なお、位置重み付け決定部160は同一の行、または同一の段落に含まれるキーワードに対しては、同一の重みを重み付けてもよい。位置重み付け決定部160は、決定した重みをキーワードに対応づけて重み合計算出部150に供給する。
文章格納部112は、ユーザが過去に入力した文章を格納している。また、文章格納部112は、文章に含まれる、画像の内容を示すキーワードを更に格納して、キーワードに対応づけてキーワードの重みを更に格納してもよい。文章格納部112は、文章に含まれるキーワードを、キーワード頻度算出部180の制御に基づいて、キーワード頻度算出部180に供給する。キーワード頻度算出部180は、文章格納部112が格納している文章に含まれるキーワードの数を、キーワードごとに算出する。具体的には、キーワード頻度算出部180は、文章格納部112に働きかけて、文章格納部112が格納している文章に含まれるキーワードを、自然言語処理等の処理方法を用いて抽出する。そして、キーワード頻度算出部180は抽出したキーワードごとに、当該キーワードの数を算出する。キーワード頻度算出部180は、算出したキーワードごとのキーワードの数を、キーワード重み付け決定部182に供給する。
キーワード重み付け決定部182は、キーワード頻度算出部180が算出したキーワードの数がより多いキーワードに、より小さい重み付けをする。具体的には、キーワード重み付け決定部182は、キーワード頻度算出部180が算出したキーワードの数の逆数を算出して、算出したキーワードの数の逆数を、キーワードに重みとして対応づけてよい。これにより、キーワード重み付け決定部182は、キーワードの数がより多いキーワードに、より小さい重み付けをすることができる。また、キーワード重み付け決定部182は、キーワードの数を降順または昇順に整列して、整列したキーワードの数を複数の範囲に分類して、分類した範囲ごとに所定の係数を設定してもよい。そして、キーワード重み付け決定部182は、キーワード頻度算出部180が算出したキーワードの数に、設定した係数を乗じることによって重みを算出してもよい。
例えば、キーワード重み付け決定部182は、キーワードの数を1個から5個、6個から10個、11個から50個、および51個以上等の複数の範囲に分類する。そして、キーワード重み付け決定部182は、キーワードの数に乗じた場合に、より小さな値が算出される係数を、各範囲ごとに設定してよい。例えば、キーワード重み付け決定部182は、キーワードの数が1個から5個の範囲に対しては0.1、6個から10個の範囲には0.2、および51個以上の範囲には2.0等の係数を設定してよい。続いて、キーワード重み付け決定部182は、キーワードの数に設定した係数を乗じて得られた値の逆数を算出して、算出された値をキーワードの重みとしてよい。これにより、キーワード重み付け決定部182は、設定した係数をキーワードの数に乗じて算出された値の逆数を算出することによって、キーワードの数がより多いキーワードに対応づけて、より小さな重みを重み付けることができる。キーワード重み付け決定部182は、キーワードに対応づけて重み付けした重みを、重み合計算出部150に供給する。また、キーワード重み付け決定部182は、キーワードに対応づけてキーワードの重みを、文章格納部112に格納させてもよい。
重み合計算出部150は、画像抽出部140が抽出した画像ごとに、位置重み付け決定部160が決定したキーワードの重みの合計値を算出する。具体的には、重み合計算出部150は、画像抽出部140が抽出した画像に対応づけて画像格納部110が格納しているキーワードの重みを、位置重み付け決定部160から受け取る。そして、重み合計算出部150は、画像ごとに、画像に対応づけられているキーワードの重みの合計値を算出する。また、重み合計算出部150は、画像抽出部140が抽出した画像ごとに、キーワード重み付け決定部182が重み付けしたキーワードの重みの合計値を算出してもよい。重み合計算出部150は、算出した画像ごとのキーワードの重みの合計値を、画像選択部170に供給する。
画像選択部170は、画像抽出部140が抽出した画像のうちで、画像配置位置決定部120が決定した画像配置位置により近い位置に入力されたより多くの種類のキーワードに対応づけて画像格納部110が格納している画像を選択する。具体的には、画像選択部170は、画像抽出部140が抽出した画像のうちで、重み合計算出部150から受け取った画像ごとのキーワードの重みの合計値を比較して、最も合計値が大きい画像を選択してよい。また、画像選択部170は、重み合計算出部150が、キーワード重み付け決定部182が重み付けしたキーワードの重みの合計値を算出していた場合には、画像抽出部140が抽出した画像のうちで、重み合計算出部150が算出したキーワードの重みの合計値が最も小さい画像を選択してもよい。画像選択部170は、選択した画像を、画像出力部190に供給する。
画像出力部190は、画像選択部170から受け取った画像を、画像配置位置決定部120が決定した画像配置位置に配置して、文章入力部100から受け取った文章とともに出力する。具体的には、画像出力部190は、画像配置位置決定部120から受け取った画像配置位置に、画像選択部170が選択した画像を配置する。そして、画像出力部190は、例えばモニタ等の表示装置に、文章と共に画像を出力する。具体的には、画像出力部190は、ブログ等においてユーザが文章を入力した場合に、ユーザが入力した文章に含まれるキーワードを用いて上記説明で選択された画像を画像配置位置に配置して、文章と共に出力する。
本実施形態に係る画像出力装置10は、入力された文章に含まれるキーワードに対応づけられている画像を抽出する。そして、画像配置位置により近い位置に入力されたキーワードにより大きな重みを付けて、画像ごとに、画像に対応づけられているキーワードの重みの合計値を算出する。続いて、キーワードの重みの合計値が最大の画像を選択して選択された画像を出力することができるので、ユーザは文章を入力するだけで、ユーザが画像の挿入を所望する位置の近くに入力されたキーワードの内容を適切に表す画像を、自動的に挿入して表示することができる。
また、本実施形態に係る画像出力装置10は、ユーザが過去に入力した文章に含まれるキーワードの数に基づいて、文章に含まれる数が多いキーワードに、文章に含まれる数が少ないキーワードよりも、より小さい重みを重み付ける。続いて、画像ごとに、画像に対応づけられているキーワードの重みの合計値を算出する。そして、画像配置位置により近い位置に入力されたより多くの種類のキーワードに対応づけられている画像の中で、キーワードの重みの合計値が最も小さい画像を選択できるので、ユーザが使用することの少ないキーワードに対応付けられた画像を自動的に選択して出力することができる。これにより、画像出力装置10は、ユーザにとってなじみが薄く、新鮮さを感じさせ、かつ珍しさを感じさせる画像を自動的に選択して出力できるので、ユーザが飽きることがなく、ユーザにとって意外性の高い画像を挿入した文章を作成できる。
図3は、本実施形態に係る画像格納部110のデータ構造の一例を示す。画像格納部110は、画像の内容を示すキーワードに対応づけて画像を格納する。なお、画像格納部110は、複数のキーワードに対応づけて画像を格納してもよい。また、画像格納部110が格納する画像は、インターネット等のネットワークを介して画像入力部102が受け取った画像、ユーザが撮像した撮像画像、およびユーザが作成した画像等であってよい。また、画像の内容を示すキーワードは、画像に含まれるオブジェクトのオブジェクト名を表すキーワード、画像に含まれる背景を表すキーワード、および画像に付帯されている付帯情報に基づいて決定されるキーワードであってよい。更に、付帯情報は、画像が撮像画像である場合には、当該画像の撮像日時、撮像場所、撮像モード(接写モード、ポートレートモード、および夜景モード等)、および撮像条件(明度、彩度、および合焦距離等)等であってよい。一方、画像がユーザが作成した画像等である場合には、付帯情報は、画像のファイル名および画像にユーザが付帯した画像の内容を示すキーワードであってよい。
例えば、画像300が小田原の街等を表す画像である場合には、画像格納部110は、画像300を、キーワードである「小田原」に対応づけて格納する。また、画像310が小田原城を表す画像である場合には、画像格納部110は、画像310を、キーワードである「小田原」および「城」に対応づけて格納してよい。更に、例えば、画像320が昼間に撮像した白猫の撮像画像である場合には、画像格納部110は、画像320を、キーワードである「白猫」および「昼」に対応づけて格納してよい。
図4は、本実施形態に係る画像出力部190による出力の一例を示す。画像配置位置決定部120は、画像出力部190が文章および画像を出力する出力領域910内に、画像を配置すべき領域である画像配置位置810を決定する。続いて、画像配置位置決定部120が決定した画像配置位置810の位置に関する情報が、文章範囲決定部184に供給される。そして、画像配置位置810の位置に関する情報を受け取った文章範囲決定部184は、キーワード抽出部130がキーワードを抽出すべき文章の範囲を決定する。例えば、文章範囲決定部184は、文章範囲950を決定する。そして、キーワード抽出部130は、文章範囲950からキーワードを抽出する。続いて、画像選択部170は、画像配置位置810に配置されるべき画像として、文章範囲950に含まれるキーワードであって、画像配置位置810により近い位置により多くの種類のキーワードに対応づけられている画像を選択する。例えば、文章範囲950内に入力された画像の内容を示すキーワードとして、キーワード912、キーワード914、キーワード916、キーワード918、およびキーワード920をキーワード抽出部130が抽出した場合を考える。
係る場合においては、画像抽出部140は、キーワード抽出部130が抽出したキーワードの少なくとも一つに対応づけて画像格納部110が格納している画像を抽出する。例えば、図3において説明した画像格納部110から、画像抽出部140は、キーワード912の「小田原」に対応付けて画像格納部110が格納している画像300および画像310を抽出してよい。同様に、画像抽出部140は、キーワード914、キーワード916、キーワード918、およびキーワード920に対応づけて画像格納部110が格納している画像を抽出する。そして、画像選択部170は、画像抽出部140が抽出した複数の画像のうちで、重み合計算出部150が画像ごとに算出した、キーワードの重みの合計値が最も大きい画像を選択する。
例えば、画像配置位置810から各キーワードまでの距離のうち、他のキーワードよりも画像配置位置810により近い位置に入力された、キーワード918およびキーワード920に対応づけて画像格納部110が格納している画像を、画像選択部170は選択してよい。そして、画像出力部190は、画像選択部170が選択した画像を画像配置位置810に配置して、文章とともに表示する。また、文章範囲決定部184が決定した文章範囲950に含まれるキーワードに対応づけて画像格納部110が格納している画像を、画像抽出部140は抽出してもよい。文章範囲決定部184が、キーワード抽出部130が抽出すべきキーワードが含まれる文章の範囲を予め決定することにより、キーワード抽出部130が文章全体からキーワードを抽出して、画像抽出部140が、キーワード抽出部130が抽出したキーワードに対応づけて画像格納部110が格納している画像を抽出する場合よりも、より迅速に画像を抽出することができる。
図5は、本実施形態に係る画像出力部190による出力の一例を示す。文章範囲決定部184が出力領域940の中に文章範囲950を設定した場合に、キーワード選択制御部106は、ユーザに、文章範囲950を除く範囲に入力された文章からキーワードを選択させる。例えば、キーワード922およびキーワード924を選択させる。画像抽出部140は、文章範囲950内に含まれるキーワードおよびユーザが選択したキーワードに対応づけて画像格納部110が格納している画像を抽出する。
そして、画像選択部170は、画像抽出部140が抽出した複数の画像の中から、画像配置位置決定部120が決定した画像配置位置により近い位置に入力されたより多くの種類のキーワードに対応づけて画像格納部110が格納している画像を選択してよい。例えば、画像配置位置812から各キーワードまでの距離のうち、他のキーワードよりも画像配置位置812により近い位置に入力されたキーワードが、キーワード922およびキーワード924である場合には、キーワード922およびキーワード924に対応づけて画像格納部110が格納している画像を、画像選択部170は選択してよい。そして、画像出力部190は、画像選択部170が選択した画像を画像配置位置812に配置して、文章とともに表示する。
また、画像配置位置決定部120が決定した画像配置位置812に最も近い位置に入力されたキーワードに対応づけて画像格納部110が格納している画像を選択してもよい。例えば、画像配置位置812に最も近い位置に入力されたキーワードがキーワード922である場合には、キーワード922に対応づけて画像格納部110が格納している画像を画像選択部170は選択してよい。そして、画像出力部190は、画像選択部170が選択した画像を画像配置位置810に配置して、文章とともに表示してよい。
図6は、本実施形態に係る画像出力装置10の機能構成の一例を示す。画像出力装置10は、キーワード生成部132、キーワード付与部134、オブジェクト抽出部136、オブジェクト名付与部138、画像キーワード重み格納部162、組み合わせ重み格納部164、トリミング部172、文章キーワード重み格納部186、表現態様重み格納部188、および画像重み決定部20を更に備えてよい。また、画像重み決定部20は、頻度算出部200、頻度重み決定部202、位置重み決定部204、および大きさ重み決定部206を有してよい。
画像格納部110は格納している画像を、キーワード生成部132、オブジェクト抽出部136、および画像重み決定部20に更に供給する。また、画像格納部110は格納しているキーワードを、画像キーワード重み格納部162および組み合わせ重み格納部164に供給する。キーワード生成部132は、画像格納部110に格納されている画像の付帯情報に基づいて画像の内容を示すキーワードを生成する。具体的には、キーワード生成部132は、画像格納部110が格納している画像に付帯されている付帯情報を抽出する。付帯情報は、例えば、画像が撮像画像である場合には、当該画像の撮像日時、撮像場所、撮像モード(接写モード、ポートレートモード、および夜景モード等)、および撮像条件(明度、彩度、および合焦距離等)等であってよい。
例えば、夜景モードで撮像された画像に対しては、キーワード生成部132は当該画像に対して「夜」をキーワードとして生成する。また、キーワード生成部132は、画像の撮像日時から画像が撮像された年、または月、若しくは日をキーワードとして生成してよい。また、キーワード生成部132は、画像の撮像日時から、当該画像が撮像された季節をキーワードとして生成してもよい。例えば、キーワード生成部132は、3月から4月に撮像された画像には「春」を、6月から8月に撮像された画像には「夏」を、9月から11月に撮像された画像には「秋」を、そして12月から2月に撮像された画像には「冬」をそれぞれキーワードとして生成してよい。
また、キーワード生成部132は、撮像時刻に基づいて「朝」、「昼」、「夕方」、および「夜」等のキーワードを生成してもよい。更に、キーワード生成部132は、撮像場所に基づいて、画像に対して当該画像が撮像された地域名、地名、および都市名等をキーワードとして生成してもよい。そして、キーワード生成部132は、撮像条件に基づいて、例えば、明度が高い場合には「明るい」等を、彩度が高い場合には「鮮やか」又は「派手」等をキーワードとして生成してもよい。なお、画像がユーザが作成した画像である場合には、キーワード生成部132は、当該画像にユーザが付与したキーワードをキーワードとして生成してもよい。キーワード生成部132は、生成したキーワードをキーワード付与部134に供給する。キーワード付与部134は、キーワード生成部132が生成したキーワードを、画像に対応づけて画像格納部110に格納する。キーワード付与部134は、画像に複数のキーワードを対応づけて、画像格納部110に複数のキーワードを画像に対応づけて格納してもよい。
オブジェクト抽出部136は、画像格納部110が格納している画像に含まれるオブジェクトを抽出する。例えば、オブジェクト抽出部136は、エッジ検出等の画像処理を用いてオブジェクトを抽出する。また、オブジェクト抽出部136は、画像の空間周波数成分が予め定められた周波数よりも大きい領域と、当該領域を除く領域とに分けてオブジェクトおよび背景を抽出してもよい。オブジェクト抽出部136は、抽出したオブジェクトをオブジェクト名付与部138に供給する。オブジェクト名付与部138は、オブジェクト抽出部136が抽出したオブジェクトのオブジェクト名を、画像の内容を示すキーワードとして画像に対応付ける。そして、オブジェクト名付与部138は、画像に対応付けたキーワードを画像格納部110に格納させる。
例えば、オブジェクト名付与部138は、テンプレート画像に対応づけてオブジェクト名を格納するオブジェクトテンプレートデータベースを有していてもよい。オブジェクト名付与部138は、オブジェクト抽出部136から受け取ったオブジェクトとオブジェクトテンプレートデータベースが格納するテンプレート画像とをマッチングして、マッチしたテンプレート画像に対応づけてオブジェクトテンプレートデータベースが格納しているオブジェクト名を、画像の内容を示すキーワードとして画像に対応付けてよい。例えば、画像に含まれるオブジェクトが猫であることがテンプレート画像とのマッチングにより判明した場合には、オブジェクト名付与部138は、「猫」を画像の内容を示すキーワードとして画像に対応付けてよい。また、オブジェクト名付与部138は、ユーザが入力したキーワードを、画像に対応づけて画像格納部110に格納してもよい。
文章格納部112は、文章を表現態様重み格納部188に更に供給する。表現態様重み格納部188は、文字の書体又は文字のサイズに対応づけて、文字の書体の重み又は文字サイズの重みを格納する。具体的には、表現態様重み格納部188は、明朝体、ゴシック体、および行書体等の書体ごとに対応付けられた重みを格納する。また、表現態様重み格納部188は、文字のサイズ、斜体であるか否か、および太字であるか否か等の文字の表現態様ごとに対応付けられた重みを格納する。ユーザが文字に対して文字の書体又はサイズ等を変更している場合には、ユーザは、当該文字を他の文字と比較してより強調して表示したいと考えている場合が多い。したがって、例えば、表現態様重み格納部188は、文字のサイズが大きい場合には、文字のサイズがより小さい文字のサイズよりも、大きな重みを格納してよい。表現態様重み格納部188は、所定のキーワードの書体又はサイズに対応づけて格納している重みを、キーワード重み付け決定部182に供給する。
キーワード重み付け決定部182は、文章格納部112が格納している文章に含まれる所定のキーワードの書体又は文字サイズに対応づけて表現態様重み格納部188が格納している重みがより大きい場合に、より大きい重みを所定のキーワードに対応付けてよい。例えば、キーワード重み付け決定部182は、キーワード頻度算出部180が算出したキーワードの重みと、当該キーワードの書体およびサイズに対応づけて表現態様重み格納部188が格納している重みとを加算して、当該キーワードの重みを算出してもよい。また、キーワード重み付け決定部182は、キーワードの重みに、当該キーワードの書体等に対応づけて表現態様重み格納部188が格納している重みを係数として乗じて、当該キーワードの重みを算出してもよい。キーワード重み付け決定部182は、キーワードに対応づけて決定した重みを文章キーワード重み格納部186に供給する。文章キーワード重み格納部186は、文章格納部112が格納している文章に含まれるキーワードに対応づけてキーワードの重みを格納する。具体的には、文章キーワード重み格納部186は、キーワード重み付け決定部182が決定したキーワードごとの重みを受け取って格納する。文章キーワード重み格納部186は、画像選択部170の制御に基づいて、画像選択部170にキーワードに対応づけられた重みを供給する。
これにより、キーワード重み付け決定部182は、ユーザが入力することが多いキーワードに、ユーザが入力することが少ないキーワードに比べてより大きな重みを対応付けることができるので、本実施形態に係る画像出力装置10は、文章に含まれるキーワードに対応付けられた重みを参照することで、ユーザの関心が高く、ユーザが想起することの多いキーワードを的確に把握できる。また、キーワード重み付け決定部182は、ユーザが所定のキーワードに設定した文字の書体又はサイズ等に基づいて、所定のキーワードに重み付けできるので、ユーザが文章を入力している時の関心に応じて、適切な重みを文章に含まれるキーワードに対応付けることもできる。
画像キーワード重み格納部162は、画像格納部110が格納しているキーワードに対応づけて、キーワードの重みを格納する。また、画像キーワード重み格納部162は、画像重み決定部20の制御に基づいて、キーワードの重みを格納してもよい。画像キーワード重み格納部162は、キーワードの重みを重み合計算出部150に供給する。組み合わせ重み格納部164は、画像の内容を示す複数のキーワードの組み合わせに対応づけて、複数のキーワードの組み合わせの重みを格納する。組み合わせ重み格納部164は、複数のキーワードの組み合わせの重みを重み合計算出部150に供給する。画像重み決定部20は、画像格納部110から受け取った複数の画像のキーワードのそれぞれについて重みを算出して、算出した重みを画像のキーワードに対応づけて画像キーワード重み格納部162に格納させる。具体的には、画像重み決定部20は、頻度算出部200、頻度重み決定部202、位置重み決定部204、および大きさ重み決定部206を有する。
頻度算出部200は、画像格納部110が格納している複数の画像において、画像の内容を示すキーワードであるオブジェクト名のオブジェクトごとに、当該オブジェクトが含まれる画像の数を算出する。また、頻度算出部200は、画像格納部110が格納している複数の画像のそれぞれに対応づけられているキーワードについて、画像格納部110が格納している複数の画像に対応づけられている当該キーワードの数を、キーワードごとに算出してもよい。頻度算出部200は、算出したオブジェクトごとの当該オブジェクトが含まれる画像の数、および画像に対応づけられているキーワードごとの当該キーワードが複数の画像に含まれる数を、頻度重み決定部202に供給する。頻度重み決定部202は、頻度算出部200がオブジェクトごとに算出した画像の数がより多いオブジェクト名であるキーワードに対応づけて、より大きい重みを画像キーワード重み格納部162に格納させる。また、頻度重み決定部202は、頻度算出部200がキーワードごとに算出した当該キーワードが複数の画像に含まれる数がより多いキーワードに対応づけて、より大きい重みを画像キーワード重み格納部162に格納させてもよい。
これにより、ユーザが所定のオブジェクトの画像をより多く撮像している場合に、頻度重み決定部202は、当該オブジェクトを含む画像に対してより大きな重みをつけることができるので、ユーザの関心が高いオブジェクトを含む画像に、ユーザの関心が低いオブジェクトを含む画像よりもより大きな重みをつけることができる。
位置重み決定部204は、画像格納部110が格納している画像の中心位置からより近いオブジェクトのオブジェクト名であるキーワードに対応づけて、より大きい重みを画像キーワード重み格納部162に格納させる。例えば、位置重み決定部204は、画像に含まれるオブジェクトが画像に対して占める位置を算出する。続いて、位置重み決定部204は、画像の中心位置からオブジェクトへの距離を算出する。そして、位置重み決定部204は、画像の中心位置からオブジェクトへの距離に対応づけて、距離がより近い場合により大きな重みを当該オブジェクトのオブジェクト名であるキーワードに対応づける。ここで、ユーザが画像を撮像する場合には、画像の中心位置に近い領域にユーザが撮像を所望するオブジェクトが含まれる場合が多い。したがって、本実施形態に係る画像出力装置10は、位置重み決定部204を備えるので、ユーザの関心が高いオブジェクトを含む画像に対して、ユーザの関心が低いオブジェクトを含む画像よりも、より大きな重みを重み付けることができる。
大きさ重み決定部206は、画像格納部110が格納している画像に対する大きさがより大きいオブジェクトのオブジェクト名であるキーワードに対応づけて、より大きい重みを画像キーワード重み格納部162に格納させる。例えば、大きさ重み決定部206は、画像の撮像領域の面積と画像に含まれるオブジェクトの面積とを算出する。続いて、大きさ重み決定部206は、オブジェクトの面積が画像に占める割合を算出する。そして、大きさ重み決定部206は、オブジェクトの面積が画像に占める割合に対応づけて、当該割合がより大きい場合により大きな重みを当該オブジェクトのオブジェクト名であるキーワードに対応付けてよい。画像抽出部140は、抽出した画像に対応づけて画像格納部110が格納しているキーワードを、重み合計算出部150に更に供給する。
重み合計算出部150は、画像抽出部140から受け取った画像に対応づけて画像格納部110が格納しているキーワードであって、キーワード抽出部130が抽出したキーワードと同一のキーワードに対応づけて画像キーワード重み格納部162が格納しているキーワードの重みを抽出する。そして、重み合計算出部150は、抽出したキーワードの重みを、画像ごとに合計して合計値を算出する。また、重み合計算出部150は、画像抽出部140から受け取った画像に対応づけて画像格納部110が格納している複数のキーワードであって、キーワード抽出部130が抽出したキーワードと同一のキーワードに対応づけて組み合わせ重み格納部164が格納している複数のキーワードの組み合わせの重みを抽出する。そして、重み合計算出部150は、抽出した複数のキーワードの組み合わせの重みを、画像ごとに合計して合計値を算出する。更に、重み合計算出部150は、画像抽出部140から受け取った画像に対応づけて画像格納部110が格納しているキーワードであって、キーワード抽出部130が抽出したキーワードと同一のキーワードに対応づけて文章キーワード重み格納部186が格納しているキーワードの重みの合計値を算出してもよい。重み合計算出部150は、算出した画像ごとの重みを画像選択部170に更に供給する。
画像選択部170は、画像抽出部140が抽出した画像のうちで、画像配置位置決定部120が決定した画像配置位置により近い位置に入力されたより多くの種類のキーワードに対応づけて画像格納部110が格納している画像から、複数の画像を選択した場合には、重み合計算出部150から受け取った重みの合計値が大きい画像から予め定められた数の画像を、画像抽出部140から受け取った画像から選択してもよい。また、画像選択部170は、重み合計算出部150から受け取った重みの合計値が予め定められた値より大きい画像を、画像抽出部140から受け取った画像から選択してもよい。更に、画像選択部170は、重み合計算出部150から受け取った重みの合計値が最大の画像を、画像抽出部140から受け取った画像から選択してもよい。そして、画像選択部170は、重み合計算出部150から受け取ったキーワードの重みの合計値が同じ画像が複数ある場合には、重み合計算出部150が算出した複数のキーワードの組み合わせの重みの合計値がより大きい画像を、画像抽出部140から受け取った画像から選択してもよい。また、画像選択部170は、重み合計算出部150から受け取ったキーワードの重みの合計値が同じ画像が複数ある場合には、重み合計算出部150が算出した文章キーワード重み格納部186が格納しているキーワードの重みの合計値がより大きい画像を、画像抽出部140から受け取った画像から選択してもよい。画像選択部170は、選択した画像をトリミング部172に更に供給する。
トリミング部172は、オブジェクト名付与部138が画像に付与したキーワードに対応するオブジェクトを含むように、画像選択部170から受け取った画像をトリミングする。例えば、トリミング部172は、画像に含まれるオブジェクトに対応づけて画像に付帯されている当該オブジェクトの位置情報を用いてトリミングしてよい。また、トリミング部172は、パターンマッチング等の画像処理により、オブジェクト名付与部138が画像に付与したキーワードに対応するオブジェクトを含むように、画像に含まれるオブジェクトをトリミングしてもよい。更に、トリミング部172は、画像に含まれるオブジェクトを拡大および縮小してもよい。トリミング部172は、トリミングした画像を画像出力部190に供給する。画像出力部190は、トリミング部172から受け取ったトリミングした画像を入力された文章と共に出力してもよい。例えば、画像出力部190は、モニタ等に文章と共に画像を出力する。
本実施形態に係る画像出力装置10によれば、複数の画像が画像選択部170において選択された場合においても、画像に対応づけて画像格納部110が格納しているキーワードの重みに基づいて、ユーザが表示を所望する画像を適切に選択して表示できる。これにより、画像選択部170において複数の画像が選択された場合でも、ユーザ自身が画像を選択することがないので、ユーザは思考を中断することなく、文章を入力できる。
図7は、本実施形態に係る画像キーワード重み格納部162のデータ構造の一例を示す。画像キーワード重み格納部162は、画像格納部110が格納しているキーワードに対応づけてキーワードの重みを格納する。具体的には、画像キーワード重み格納部162は、画像重み決定部20から受け取ったキーワードの重みを、キーワードに対応づけて格納する。例えば、画像キーワード重み格納部162は、キーワードAに重み「3」を対応づけて格納している。また、画像キーワード重み格納部162は、キーワードBに重み「2」を対応づけて格納している。そして、画像キーワード重み格納部162は、キーワードCに重み「1」を対応づけて格納している。更に、画像キーワード重み格納部162は、キーワードDに重み「4」を対応づけて格納している。
重み合計算出部150は、画像に対応付けられたキーワードの重みを、画像キーワード重み格納部162から抽出する。そして、重み合計算出部150は、当該画像に対応付けられたキーワードの重みの合計値を算出する。例えば、キーワード抽出部130が文章入力部100から入力された文章から抽出したキーワードが、キーワード「A」およびキーワード「D」であった場合を考える。係る場合において、画像抽出部140は、キーワード「A」又はキーワード「D」の少なくとも一方が対応づけられている画像を、画像格納部110から抽出する。
そして、重み合計算出部150は、抽出した複数の画像のそれぞれに対応づけられているキーワード「A」の重みとキーワード「D」の重みとの合計値を画像ごとに算出する。例えば、抽出した画像に、キーワード「A」、キーワード「B」、およびキーワード「D」が対応づけられている場合を考える。この場合において、画像に対応づけられているキーワードの中でキーワード抽出部130が抽出したキーワードと同一のキーワードは、キーワード「A」およびキーワード「D」である。係る場合に、重み合計算出部150は、当該画像の重みをキーワード「A」の重みとキーワード「D」の重みとの合計値である「7」と算出する。続いて、画像選択部170は、重み合計算出部150が算出した画像ごとの重みの合計値を比較して、重みの合計値が最大の画像を選択する。そして、重みの合計値が最大である画像を画像選択部170は選択する。そして、画像出力部190は、画像選択部170が選択した画像を、ユーザが入力した文章と共に表示する。
本実施形態に係る画像出力装置10によれば、ユーザが入力した文章に含まれるキーワードの少なくとも一つと同一のキーワードに対応づけられている画像を抽出して、画像に対応づけられているキーワードの重みを画像ごとに算出する。そして、画像ごとに算出したキーワードの重みの合計値を比較して画像を自動的に選択できるので、ユーザが想起した画像を適切に選択して、ユーザが入力した文章と共に表示することができる。例えば、本実施形態に係る画像出力装置10によれば、ブログ等においてユーザが入力した文章に含まれるキーワードの重みに基づいて、ユーザが想起している画像を自動的に選択して、文章と共に表示することができる。
図8は、本実施形態に係る組み合わせ重み格納部164のデータ構造の一例を示す。組み合わせ重み格納部164は、画像の内容を示す複数のキーワードの組み合わせに対応づけて、複数のキーワードの組み合わせの重みを格納する。具体的には、組み合わせ重み格納部164は、画像に対応づけられている複数のキーワードのキーワード間の関連に基づいて重みを格納している。より具体的には、画像格納部110が格納している複数の画像のうちで、画像に対応づけられている複数のキーワードの組み合わせの数がより多い場合に、当該複数のキーワードの組み合わせにより大きい重みを対応づけて格納する。例えば、ユーザが冬山の画像を頻繁に撮像して、撮像した冬山の複数の画像を画像格納部110に格納している場合を考える。係る場合には、画像格納部110は「冬」および「山」のキーワードに対応付けられた冬山の画像を、「冬」および「山」のキーワードを除くキーワードに対応付けられた画像よりも多く格納しているので、「冬」および「山」のキーワード間の関連が高いとして、「冬」および「山」のキーワードの組み合わせにより大きい重みを対応づけて格納してよい。
例えば、組み合わせ重み格納部164は、キーワード「A」とキーワード「B」の組み合わせに重み「4」を対応づけて格納している。また、組み合わせ重み格納部164は、キーワード「A」とキーワード「D」の組み合わせに重み「3」を対応づけて格納している。同様に、組み合わせ重み格納部164は、キーワード「A」とキーワード「F」の組み合わせに重み「2」を、キーワード「B」とキーワード「D」の組み合わせに重み「5」を、およびキーワード「D」とキーワード「F」の組み合わせに重み「1」を対応づけて格納している。なお、組み合わせ重み格納部164は、二つのキーワードの組み合わせに限らず、少なくとも二つ以上の複数のキーワードの組み合わせに対応づけて重みを格納してもよい。また、画像出力装置10は、複数のキーワード間の組み合わせの重みを決定する組み合わせ重み決定部を更に備えていてもよい。組み合わせ重み決定部は、画像に対応付けられた複数のキーワードの組み合わせの数を算出して、複数のキーワードの組み合わせの数がより多い組み合わせに、複数のキーワードの組み合わせの数がより少ない組み合わせよりも大きい重みを対応づけてよい。
図9は、本実施形態に係る画像出力装置10のハードウェア構成の一例を示す。本実施形態に係る画像出力装置10は、ホスト・コントローラ1582により相互に接続されるCPU1505、RAM1520、グラフィック・コントローラ1575、及び表示装置1580を有するCPU周辺部と、入出力コントローラ1584によりホスト・コントローラ1582に接続される通信インターフェイス1530、ハードディスクドライブ1540、及びCD−ROMドライブ1560を有する入出力部と、入出力コントローラ1584に接続されるROM1510、フレキシブルディスク・ドライブ1550、及び入出力チップ1570を有するレガシー入出力部とを備える。
ホスト・コントローラ1582は、RAM1520と、高い転送レートでRAM1520をアクセスするCPU1505及びグラフィック・コントローラ1575とを接続する。CPU1505は、ROM1510及びRAM1520に格納されたプログラムに基づいて動作して、各部を制御する。グラフィック・コントローラ1575は、CPU1505等がRAM1520内に設けたフレーム・バッファ上に生成する画像データを取得して、表示装置1580上に表示させる。これに代えて、グラフィック・コントローラ1575は、CPU1505等が生成する画像データを格納するフレーム・バッファを、内部に含んでもよい。
入出力コントローラ1584は、ホスト・コントローラ1582と、比較的高速な入出力装置である通信インターフェイス1530、ハードディスクドライブ1540、CD−ROMドライブ1560を接続する。通信インターフェイス1530は、ネットワークを介して他の装置と通信する。ハードディスクドライブ1540は、画像出力装置10内のCPU1505が使用するプログラム及びデータを格納する。CD−ROMドライブ1560は、CD−ROM1595からプログラム又はデータを読み取り、RAM1520を介してハードディスクドライブ1540に提供する。
また、入出力コントローラ1584には、ROM1510と、フレキシブルディスク・ドライブ1550、及び入出力チップ1570の比較的低速な入出力装置とが接続される。ROM1510は、画像出力装置10が起動時に実行するブート・プログラム、画像出力装置10のハードウェアに依存するプログラム等を格納する。フレキシブルディスク・ドライブ1550は、フレキシブルディスク1590からプログラム又はデータを読み取り、RAM1520を介してハードディスクドライブ1540に提供する。入出力チップ1570は、フレキシブルディスク・ドライブ1550、例えばパラレル・ポート、シリアル・ポート、キーボード・ポート、マウス・ポート等を介して各種の入出力装置を接続する。
RAM1520を介してハードディスクドライブ1540に提供される画像出力プログラムは、フレキシブルディスク1590、CD−ROM1595、又はICカード等の記録媒体に格納されて利用者によって提供される。画像出力プログラムは、記録媒体から読み出され、RAM1520を介して画像出力装置10内のハードディスクドライブ1540にインストールされ、CPU1505において実行される。画像出力装置10にインストールされて実行される画像出力プログラムは、CPU1505等に働きかけて、画像出力装置10を、図1から図8にかけて説明した文章入力部100、画像入力部102、画像配置位置入力制御部104、キーワード選択制御部106、画像格納部110、文章格納部112、画像配置位置決定部120、キーワード抽出部130、画像抽出部140、重み合計算出部150、位置重み付け決定部160、画像選択部170、キーワード頻度算出部180、キーワード重み付け決定部182、文章範囲決定部184、画像出力部190、キーワード生成部132、キーワード付与部134、オブジェクト抽出部136、オブジェクト名付与部138、画像キーワード重み格納部162、組み合わせ重み格納部164、トリミング部172、文章キーワード重み格納部186、表現態様重み格納部188、画像重み決定部20、頻度算出部200、頻度重み決定部202、位置重み決定部204、大きさ重み決定部206、および組み合わせ重み決定部として機能させる。
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加え得ることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。