(57)【特許請求の範囲】
【請求項１】
表示部と，
制御部と，
を備える情報処理装置において，
前記制御部は，
画像データを取得する取得処理と，
前記取得処理にて取得した画像データによって表される画像の，短辺の長さに対する長辺の長さの比である縦横比が，所定値より大きいか否かを判断する判断処理と，
前記画像全体を，所定の大きさに収まる縮小率で縮小したサムネイル画像を生成する第１生成処理と，
前記画像の一部を抽出する抽出処理と，
前記抽出処理にて抽出した前記画像の一部を，前記所定の大きさに収まる縮小率で縮小したサムネイル画像を生成する第２生成処理と，
前記判断処理にて前記画像の前記縦横比が前記所定値よりも大きいと判断された場合であって，前記画像に含まれる文字列が短辺方向に並ぶと判断された場合に，前記第２生成処理にて生成されたサムネイル画像を前記表示部に表示させ，前記判断処理にて前記画像の前記縦横比が前記所定値よりも大きくないと判断された場合，または，前記判断処理にて前記画像の前記縦横比が前記所定値よりも大きいと判断された場合であって，前記画像に含まれる文字列が短辺方向に並ばないと判断された場合に，前記第１生成処理にて生成されたサムネイル画像を前記表示部に表示させる表示処理と，
を実行することを特徴とする情報処理装置。
【請求項２】
請求項１に記載する情報処理装置において，
前記制御部は，
前記画像の画像領域を複数のブロックに分割し，各ブロックについて，画素値が所定の画素閾値以上の画素の密度である画素密度を算出する算出処理を実行し，
前記抽出処理では，前記画像の画像領域のうち，画素密度が他のブロックより高いブロックを含む領域を，前記一部として抽出することを特徴とする情報処理装置。
【請求項３】
請求項１に記載する情報処理装置において，
前記制御部は，
前記画像から特定の文字あるいは特定のマークを検出する検出処理を実行し，
前記抽出処理では，前記画像の画像領域のうち，前記特定の文字あるいは前記特定のマークを含む領域を，前記一部として抽出することを特徴とする情報処理装置。
【請求項４】
請求項１から請求項３のいずれか１つに記載する情報処理装置において，
前記制御部は，
前記抽出処理にて前記画像の一部を抽出する前に，前記画像の短辺が主走査方向に平行となるように傾きを補正することを特徴とする情報処理装置。
【請求項５】
請求項１から請求項４のいずれか１つに記載する情報処理装置において，
前記制御部は，
前記画像全体あるいは前記画像の上端から所定範囲の領域を，前記所定の大きさに収まる縮小率で縮小したサムネイル画像を生成する第３生成処理と，
前記第３生成処理にて生成されたサムネイル画像を，前記表示部に表示させるプレ表示処理と，
を実行し，さらに前記判断処理にて前記画像の前記縦横比が前記所定値よりも大きいと判断された場合，前記プレ表示処理と，前記抽出処理および前記第２生成処理とを同時に実行し，
前記第２生成処理が完了した後，前記プレ表示処理を終了し，前記表示処理を実行することを特徴とする情報処理装置。
【請求項６】
請求項５に記載する情報処理装置において，
前記制御部は，
前記判断処理にて前記画像の前記縦横比が前記所定値よりも大きいと判断された場合であって，前記画像から特定の文字あるいは特定のマークを検出する場合，あるいは前記画像のデータサイズが所定のデータ閾値よりも大きい場合に，前記第３生成処理および前記プレ表示処理を実行し，それ以外の場合に，前記第３生成処理および前記プレ表示処理を実行せず，前記表示処理を実行することを特徴とする情報処理装置。
【請求項７】
請求項１から請求項６のいずれか１つに記載する情報処理装置において，
前記制御部は，
前記所定の大きさよりも画像サイズが大きく，前記画像全体を縮小した画像である全体縮小画像を生成するスクロール画像生成処理と，
前記スクロール画像生成処理にて生成された前記全体縮小画像のうち前記所定の大きさの領域を表示し，さらに所定方向への表示の切換指示に従って，前記全体縮小画像を，前記表示部に前記所定方向にスクロール表示させるスクロール表示処理と，
を実行し，
前記判断処理にて前記画像の前記縦横比が前記所定値よりも大きいと判断された場合，前記表示処理を実行した後，前記スクロール画像生成処理を実行し，前記スクロール画像生成処理が完了した後，前記表示処理を終了し，前記スクロール表示処理を実行することを特徴とする情報処理装置。
【請求項８】
請求項１から請求項７のいずれか１つに記載する情報処理装置において，
前記制御部は，
前記抽出処理では，複数のコンテンツが含まれる前記画像の画像データに，前記各コンテンツのレイアウトの情報であるレイアウト情報が含まれている場合，当該レイアウト情報に基づいて前記画像の一部を抽出することを特徴とする情報処理装置。
【請求項９】
請求項１から請求項８のいずれか１つに記載する情報処理装置において，
前記制御部は，
前記表示処理では，前記判断処理にて前記画像の前記縦横比が前記所定値よりも大きいと判断された場合であって，前記画像全体の画素密度の偏差が所定の偏差閾値よりも大きい場合には，前記第２生成処理にて生成されたサムネイル画像を，前記表示部に表示させ，前記画像全体の画素密度の偏差が前記所定の偏差閾値よりも大きくない場合には，前記第１生成処理にて生成されたサムネイル画像を，前記表示部に表示させることを特徴とする情報処理装置。
【請求項１０】
原稿の画像を読み取る読取部と，
表示部と，
制御部と，
を備える画像読取装置において，
前記制御部は，
原稿の画像を前記読取部に読み取らせる読取処理と，
前記読取処理にて読み取らせた原稿の画像データによって表される画像の，短辺の長さに対する長辺の長さの比である縦横比が，所定値より大きいか否かを判断する判断処理と，
前記画像全体を，所定の大きさに収まる縮小率で縮小したサムネイル画像を生成する第１生成処理と，
前記画像の一部を抽出する抽出処理と，
前記抽出処理にて抽出した前記画像の一部を，前記所定の大きさに収まる縮小率で縮小したサムネイル画像を生成する第２生成処理と，
前記判断処理にて前記画像の前記縦横比が前記所定値よりも大きいと判断された場合であって，前記画像に含まれる文字列が短辺方向に並ぶと判断された場合に，前記第２生成処理にて生成されたサムネイル画像を前記表示部に表示させ，前記判断処理にて前記画像の前記縦横比が前記所定値よりも大きくないと判断された場合，または，前記判断処理にて前記画像の前記縦横比が前記所定値よりも大きいと判断された場合であって，前記画像に含まれる文字列が短辺方向に並ばないと判断された場合に，前記第１生成処理にて生成されたサムネイル画像を前記表示部に表示させる表示処理と，
を実行することを特徴とする画像読取装置。
【請求項１１】
サムネイル画像を表示装置に表示させる画像表示方法であって，
画像データを取得する取得ステップと，
前記取得ステップにて取得した画像データによって表される画像の，短辺の長さに対する長辺の長さの比である縦横比が，所定値より大きいか否かを判断する判断ステップと，
前記画像全体を，所定の大きさに収まる縮小率で縮小したサムネイル画像を生成する第１生成ステップと，
前記画像の一部を抽出する抽出ステップと，
前記抽出ステップにて抽出した前記画像の一部を，前記所定の大きさに収まる縮小率で縮小したサムネイル画像を生成する第２生成ステップと，
前記判断ステップにて前記画像の前記縦横比が前記所定値よりも大きいと判断された場合であって，前記画像に含まれる文字列が短辺方向に並ぶと判断された場合に，前記第２生成ステップにて生成されたサムネイル画像を前記表示装置に表示させ，前記判断ステップにて前記画像の前記縦横比が前記所定値よりも大きくないと判断された場合，または，前記判断ステップにて前記画像の前記縦横比が前記所定値よりも大きいと判断された場合であって，前記画像に含まれる文字列が短辺方向に並ばないと判断された場合に，前記第１生成ステップにて生成されたサムネイル画像を前記表示装置に表示させる表示ステップと，
を実行することを特徴とする画像表示方法。
【請求項１２】
表示部と，
制御部と，
を備える情報処理装置において，
前記制御部は，
画像データを取得する取得処理と，
前記取得処理にて取得した画像データによって表される画像の，短辺の長さに対する長辺の長さの比である縦横比が，所定値より大きいか否かを判断する判断処理と，
前記画像全体を，所定の大きさに収まる縮小率で縮小したサムネイル画像を生成する第１生成処理と，
前記画像の一部を抽出する抽出処理と，
前記抽出処理にて抽出した前記画像の一部を，前記所定の大きさに収まる縮小率で縮小したサムネイル画像を生成する第２生成処理と，
前記画像に含まれる文字列が長辺方向に並ぶか短辺方向に並ぶかを判断する文字列方向判断処理と，
前記判断処理にて前記画像の前記縦横比が前記所定値よりも大きいと判断された場合であって，前記文字列方向判断処理にて短辺方向に並ぶと判断された場合には，前記第２生成処理にて生成されたサムネイル画像を前記表示部に表示させ，前記判断処理にて前記画像の前記縦横比が前記所定値よりも大きくないと判断された場合，または，前記判断処理にて前記画像の前記縦横比が前記所定値よりも大きいと判断された場合であって，前記文字列方向判断処理にて長辺方向に並ぶと判断された場合には，前記第１生成処理にて生成されたサムネイル画像を前記表示部に表示させる表示処理と，
を実行することを特徴とする情報処理装置。
【請求項１３】
表示部と，
制御部と，
を備える情報処理装置において，
前記制御部は，
画像データを取得する取得処理と，
前記取得処理にて取得した画像データによって表される画像の，短辺の長さに対する長辺の長さの比である縦横比が，所定値より大きいか否かを判断する判断処理と，
前記画像全体を，所定の大きさに収まる縮小率で縮小したサムネイル画像を生成する第１生成処理と，
前記画像の一部を抽出する抽出処理と，
前記抽出処理にて抽出した前記画像の一部を，前記所定の大きさに収まる縮小率で縮小したサムネイル画像を生成する第２生成処理と，
前記判断処理にて前記画像の前記縦横比が前記所定値よりも大きいと判断された場合であって，前記画像全体の画素密度の偏差が所定の偏差閾値よりも大きい場合には，前記第２生成処理にて生成されたサムネイル画像を前記表示部に表示させ，前記判断処理にて前記画像の前記縦横比が前記所定値よりも大きくないと判断された場合，または，前記判断処理にて前記画像の前記縦横比が前記所定値よりも大きいと判断された場合であって，前記画像全体の画素密度の偏差が前記所定の偏差閾値よりも大きくない場合には，前記第１生成処理にて生成されたサムネイル画像を前記表示部に表示させる表示処理と，
を実行することを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，情報処理装置，画像読取装置，および画像表示方法に関する。さらに詳細には，サムネイル画像を表示する技術に関するものである。
【背景技術】
【０００２】
従来から，スマートフォンやパーソナルコンピュータ（ＰＣ）等の情報処理装置のディスプレイや，スキャナやプリンタ等の画像処理装置の操作パネルに，サムネイル画像を表示する技術が知られている。サムネイル画像を表示する技術を開示した文献としては，例えば，特許文献１がある。特許文献１では，サムネイル画像の中心領域を抽出し，所定サイズにリサイズした画像を一覧表示する技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】ＷＯ２０１２／０４６５３６
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら，前記した従来の技術には，次のような問題があった。すなわち，サムネイル画像は，縦横比が決められている。画像データの画像には，Ａ４やレター等の縦横比がサムネイル画像と近い画像の他，レシートのような縦横比がサムネイル画像と大きく異なる画像もある。そのため，例えば，レシートのような縦長の画像全体をサムネイル画像に収めると，サムネイル画像内の余白が多くなり，画像も視認し難くなる。
【０００５】
また，特許文献１のようにサムネイル画像の中心領域を抽出してリサイズした画像を一覧表示して余白を無くすこともできるが，表示までの処理が多く，処理の負荷がかかる。画像データの画像には，画像全体を収めたサムネイル画像をそのまま表示しても視認性についての影響が殆ど無い場合もあり，全ての画像をリサイズすると処理の負荷が大きくなることから，改善の余地がある。
【０００６】
本発明は，前記した従来の技術が有する問題点を解決するためになされたものである。すなわちその課題とするところは，サムネイル画像を表示する装置であって，処理負荷の増大の抑制と，サムネイル画像の視認性の向上と，の両立を図る技術を提供することにある。
【課題を解決するための手段】
【０００７】
この課題の解決を目的としてなされた情報処理装置は，表示部と，制御部と，を備える情報処理装置において，前記制御部は，画像データを取得する取得処理と，前記取得処理にて取得した画像データによって表される画像の，短辺の長さに対する長辺の長さの比である縦横比が，所定値より大きいか否かを判断する判断処理と，前記画像全体を，所定の大きさに収まる縮小率で縮小したサムネイル画像を生成する第１生成処理と，前記画像の一部を抽出する抽出処理と，前記抽出処理にて抽出した前記画像の一部を，前記所定の大きさに収まる縮小率で縮小したサムネイル画像を生成する第２生成処理と，前記判断処理にて前記画像の前記縦横比が前記所定値よりも大きいと判断された場合に，前記第２生成処理にて生成されたサムネイル画像を前記表示部に表示させ，前記判断処理にて前記画像の前記縦横比が前記所定値よりも大きくないと判断された場合に，前記第１生成処理にて生成されたサムネイル画像を前記表示部に表示させる表示処理と，を実行することを特徴としている。
【０００８】
本明細書に開示される情報処理装置は，画像データを取得し，取得した画像データによって表される画像の縦横比が所定値よりも大きいか否かを判断する。そして，画像の縦横比が所定値よりも大きいと判断した場合には，画像の一部を抽出して，抽出した画像を所定の大きさに縮小したサムネイル画像を生成し，生成したサムネイル画像を表示する。一方，画像の縦横比が所定値よりも大きくないと判断した場合，画像全体を縮小してサムネイル画像を生成し，表示する。
【０００９】
すなわち，本明細書に開示される情報処理装置は，レシートの画像等，画像の縦横比が大きい場合，画像全体のサムネイル画像を表示すると余白が多くなって画像の内容も視認し難くなるので，画像の一部を抽出してサムネイル画像を生成し，表示する。これにより，サムネイル画像の余白を少なくし，視認性を向上させることができる。一方で，画像の縦横比が大きくない場合，余白がもともと少なく，視認性も良好であるため，抽出を行わず，画像全体に基づくサムネイル画像を表示することで，処理負荷の増大を抑えることが期待できる。
【００１０】
また，前記制御部は，前記画像の画像領域を複数のブロックに分割し，各ブロックについて，画素値が所定の画素閾値以上の画素の密度である画素密度を算出する算出処理を実行し，前記抽出処理では，前記画像の画像領域のうち，画素密度が他のブロックより高いブロックを含む領域を，前記一部として抽出するとよい。画素密度が高いブロックは，画素密度が低いブロックと比較して，有用な画像が含まれている可能性が高い。そのため，画素密度が高いブロックを含んで抽出する方が好ましい。
【００１１】
また，前記制御部は，前記画像から特定の文字あるいは特定のマークを検出する検出処理を実行し，前記抽出処理では，前記画像の画像領域のうち，前記特定の文字あるいは前記特定のマークを含む領域を，前記一部として抽出するとよい。例えば，レシートを読み取った画像であれば，ロゴマーク，日付，金額は，有用な画像である。そこで，これらを特定の文字あるいは特定のマークとして検出し，そのような文字あるいはマークが検出された領域を表示する方が好ましい。
【００１２】
また，前記制御部は，前記抽出処理にて前記画像の一部を抽出する前に，前記画像の短辺が主走査方向に平行となるように傾きを補正するとよい。画像の傾きを補正した画像から一部を抽出することで，より視認性に優れたサムネイル画像を表示できる。
【００１３】
また，前記制御部は，前記画像全体あるいは前記画像の上端から所定範囲の領域を，前記所定の大きさに収まる縮小率で縮小したサムネイル画像を生成する第３生成処理と，前記第３生成処理にて生成されたサムネイル画像を，前記表示部に表示させるプレ表示処理と，を実行し，さらに前記判断処理にて前記画像の前記縦横比が前記所定値よりも大きいと判断された場合，前記プレ表示処理と，前記抽出処理および前記第１生成処理とを同時に実行し，前記第１生成処理が完了した後，前記プレ表示処理を終了し，前記表示処理を実行するとよい。画像の一部の抽出に時間がかかることもあることから，初めに画像全体などの所定範囲の領域に基づくサムネイル画像を表示することで，画像が表示されるまでのユーザの不安を軽減できる。なお，第３表示処理と，抽出処理および第１生成処理とは同時に実行されていればよく，同時に開始しても別々に開始してもよい。
【００１４】
また，前記制御部は，前記判断処理にて前記画像の前記縦横比が前記所定値よりも大きいと判断された場合であって，前記画像から特定の文字あるいは特定のマークを検出する場合，あるいは前記画像のデータサイズが所定のデータ閾値よりも大きい場合に，前記第３生成処理および前記プレ表示処理を実行し，それ以外の場合に，前記第３生成処理および前記プレ表示処理を実行せず，前記表示処理を実行するとよい。特定の文字あるいは特定のマークを検出する場合や，画像のデータサイズが大きい場合は，画像の抽出に時間がかかることが想定されることから，画像全体に基づくサムネイル画像を先に表示する方が好ましい。一方，それ以外の場合は，画像の抽出が早期に完了することが想定されることから，画像全体に基づくサムネイル画像の表示を省略してもユーザに不安を与える可能性は低い。そのため，処理負荷の軽減を優先して，画像全体に基づくサムネイル画像の表示を行わない方が好ましい。
【００１５】
また，前記制御部は，前記所定の大きさよりも画像サイズが大きく，前記画像全体を縮小した画像である全体縮小画像を生成するスクロール画像生成処理と，前記スクロール画像生成処理にて生成された前記全体縮小画像のうち前記所定の大きさの領域を表示し，さらに所定方向への表示の切換指示に従って，前記全体縮小画像を，前記表示部に前記所定方向にスクロール表示させるスクロール表示処理と，を実行し，前記判断処理にて前記画像の前記縦横比が前記所定値よりも大きいと判断された場合，前記表示処理を実行した後，前記スクロール画像生成処理を実行し，前記スクロール画像生成処理が完了した後，前記表示処理を終了し，前記スクロール表示処理を実行するとよい。画像の一部を表示した場合に，有用な画像を表示していない可能性もある。そのため，画像全体を縮小した全体縮小画像を生成し，当該全体縮小画像に基づくスクロール表示を可能にすることで，画像全体を一度に表示させることなく画像の内容を確認できる。さらには，全体縮小画像の生成には時間がかかることもあることから，始めに第２生成処理にて生成したサムネイル画像を表示し，その後に全体縮小画像をスクロール表示することで，画像が表示されるまでのユーザの不安を軽減できる。
【００１６】
また，前記制御部は，前記抽出処理では，複数のコンテンツが含まれる前記画像の画像データに，前記各コンテンツのレイアウトの情報であるレイアウト情報が含まれている場合，当該レイアウト情報に基づいて前記画像の一部を抽出するとよい。画像データにレイアウト情報が含まれている場合には，当該レイアウト情報に基づいて特徴部分を抽出できることから，当該レイアウト情報に基づいて画像の一部を抽出する方が好ましい。
【００１７】
また，前記制御部は，前記原画像に含まれる文字列が長辺方向に並ぶか短辺方向に並ぶかを判断する文字列方向判断処理を実行し，前記表示処理では，前記判断処理にて前記原画像の前記縦横比が前記所定値よりも大きいと判断された場合であって，前記文字列方向判断処理にて短辺方向に並ぶと判断された場合には，前記第２生成処理にて生成されたサムネイル画像を前記表示部に表示させ，前記文字列方向判断処理にて長辺方向に並ぶと判断された場合には，前記第１生成処理にて生成されたサムネイル画像を前記表示部に表示させるとよい。画像に含まれる文字列が長辺方向に並ぶ場合（縦書きの場合）は画像の一部を表示しても内容を視認できない可能性が高い。そのため，画像の一部ではなく，画像全体に基づいてサムネイル画像を表示する方が好ましい。
【００１８】
また，前記制御部は，前記表示処理では，前記判断処理にて前記原画像の前記縦横比が前記所定値よりも大きいと判断された場合であって，前記画像全体の画素密度の偏差が所定の偏差閾値よりも大きい場合には，前記第２生成処理にて生成されたサムネイル画像を，前記表示部に表示させ，前記画像全体の画素密度の偏差が前記所定の偏差閾値よりも大きくない場合には，前記第１生成処理にて生成されたサムネイル画像を，前記表示部に表示させるとよい。画像が，写真画像等の画素密度の偏差が小さい画像である場合は，画像の一部を表示しても内容を視認できない可能性が高い。そのため，画像の一部ではなく，画像全体に基づいてサムネイル画像を表示する方が好ましい。
【００１９】
また，本明細書には，表示部と，制御部と，を備える情報処理装置において，前記制御部は，画像データを取得する取得処理と，前記取得処理にて取得した画像データによって表される画像の，短辺の長さに対する長辺の長さの比である縦横比が，所定値より大きいか否かを判断する判断処理と，前記画像全体を，所定の大きさに収まる縮小率で縮小したサムネイル画像を生成するサムネイル画像生成処理と，前記所定の大きさよりも画像サイズが大きく，前記画像全体を縮小した画像である全体縮小画像を生成するスクロール画像生成処理と，前記判断処理にて前記画像の前記縦横比が前記所定値よりも大きいと判断された場合に，前記スクロール画像生成処理にて生成された前記全体縮小画像のうち前記所定の大きさの領域を表示し，さらに所定方向への表示の切換指示に従って，前記全体縮小画像を前記表示部に前記所定方向にスクロール表示させ，前記判断処理にて前記画像の前記縦横比が前記所定値よりも大きくないと判断された場合に，前記サムネイル画像生成処理にて生成されたサムネイル画像を前記表示部に表示させる表示処理と，を実行する情報処理装置も開示されている。画像の一部を表示した場合に，有用な画像を表示していない可能性もある。そのため，画像全体に基づいて縮小した全体縮小画像を生成し，当該全体縮小画像に基づくスクロール表示を可能にすることで，画像全体を一度に表示させることなく画像の内容を確認できる。
【００２０】
上記情報処理装置の機能を備える画像読取装置，上記情報処理装置の機能を実現するための制御方法，画像読取方法，コンピュータプログラム，および当該コンピュータプログラムを格納するコンピュータ読取可能な記憶媒体も，新規で有用である。
【発明の効果】
【００２１】
本発明によれば，サムネイル画像を表示する装置であって，処理負荷の増大の抑制と，サムネイル画像の視認性の向上と，の両立を図る技術の実現が期待される。
【図面の簡単な説明】
【００２２】
【図１】実施の形態に係る画像読取システムの電気的構成を示すブロック図である。
【図２】レシート原稿の例を示す説明図である。
【図３】レシート原稿の抽出サムネイル画像の例を示す説明図である。
【図４】サムネイル表示処理の手順を示すフローチャートである。
【図５】第１抽出処理の手順を示すフローチャートである。
【図６】第２抽出処理の手順を示すフローチャートである。
【図７】文字方向検出処理の手順を示すフローチャートである。
【図８】短冊原稿の例を示す説明図である。
【図９】短冊原稿のサムネイル表示の例を示す説明図である。
【図１０】レシート原稿のスクロール表示の例を示す説明図である。
【図１１】直接スクロール表示処理の手順を示すフローチャートである。
【発明を実施するための形態】
【００２３】
以下，本発明にかかる情報処理装置を具体化した実施の形態について，添付図面を参照しつつ詳細に説明する。本実施の形態は，画像読取機能を備えたスキャナと，画像表示機能を備えたＰＣ（パーソナルコンピュータ）と，を含む画像読取システムに本発明を適用したものである。
【００２４】
まず，本形態の画像読取システム１００の電気的構成について説明する。画像読取システム１００は，図１に示すように，ＰＣ１と，スキャナ２とを備える。ＰＣ１は，情報処理装置の一例である。スキャナ２は，画像読取装置の一例である。画像読取システム１００のＰＣ１とスキャナ２とは，例えば伝送ケーブル等を介して接続され，あるいは，無線通信によって，通信可能に接続されている。スキャナ２は，画像を読み取って，読み取った画像に基づく画像データを生成する画像読取機能を有している。
【００２５】
ＰＣ１は，ＣＰＵ１１と，ＲＯＭ１２と，ＲＡＭ１３と，ＨＤＤ（ハードディスクドライブ）１４とを含むコントローラ３０を備えている。さらに，ＰＣ１は，操作部１５と，表示部１６と，ネットワークインターフェース１８とを備え，これらが，コントローラ３０に接続されている。表示部１６は，表示部の一例である。なお，図１中のコントローラ３０は，ＣＰＵ１１等，ＰＣ１の制御に利用されるハードウェアを纏めた総称であって，実際にＰＣ１に存在する単一のハードウェアを表すとは限らない。
【００２６】
ＣＰＵ１１は，ＲＯＭ１２から読み出した制御プログラムに従って，その処理結果をＲＡＭ１３またはＨＤＤ１４に記憶させながら，ＰＣ１の各構成要素を制御する。ＲＯＭ１２には，ＰＣ１の起動時にＣＰＵ１１が行う起動処理のプログラム等の各種制御プログラムや，各種設定等が記憶されている。ＲＡＭ１３は，ＣＰＵ１１が各種処理を行う際に一時的な記憶領域として利用される。ＨＤＤ１４は，各種のプログラムやデータを記憶するために使用される。
【００２７】
操作部１５は，キーボードやマウス等からなり，ユーザの指示入力を受け付ける。表示部１６は，液晶ディスプレイ等からなり，画像データのサムネイル表示や，ユーザに向けてのメッセージ表示等が行われる。なお，操作部１５と表示部１６とは，例えば，タッチパネルのように一体であってもよい。ネットワークインターフェース１８は，スキャナ２等の外部機器と通信を行うためのハードウェアである。通信媒体は，有線であっても無線であってもよい。なお，画像読取システム１００を構成するＰＣ１やスキャナ２は，それぞれ１台に限るものではなく，複数台が接続されていてもよい。
【００２８】
画像読取システム１００では，ＰＣ１は，スキャナ２を制御するアプリケーションプログラム（以下，「アプリ」とする）をＨＤＤ１４に記憶している。ＰＣ１は，ユーザの指示入力に応じてアプリを起動し，アプリを実行させた状態で，原稿の画像をスキャナ２に読み取らせる原稿読取指示を受け付ける。そして，ＰＣ１は，原稿読取指示を受け付けると，スキャナ２に対して読取ジョブを送信する。
【００２９】
スキャナ２は，読取ジョブを受信すると，読取動作を開始する。具体的に，スキャナ２は，原稿の画像を読み取って，読取画像データを生成する。読取画像データは，例えば，スキャナ２にて一度に読み取り可能なライン数ずつ生成され，スキャナ２に順次記憶される。そして，スキャナ２は，１枚の原稿の画像を読み取った読取画像データに基づいて，送信用の画像データである送付画像データを生成し，生成した送付画像データをＰＣ１に送信する。
【００３０】
ＰＣ１は，スキャナ２から送付画像データを受信し，受信した送付画像データから，原稿の範囲を推定してトリミングおよび傾き補正を実行し，原稿の画像に相当する画像データを生成する。そして，ＰＣ１は，生成した画像データに基づくサムネイル画像を生成して，表示部１６にてアプリの表示領域に表示させる。以下では，サムネイル表示の対象の画像を対象画像とし，対象画像の画像データを対象画像データとする。なお，原稿の範囲の推定や，トリミングおよび傾き補正は，スキャナ２にて実行してもよい。つまり，ＰＣ１は，対象画像データを受信してもよい。
【００３１】
ＰＣ１では，対象画像データのサイズにかかわらず，個々のサムネイル画像の表示領域の大きさおよび形状は，予め決められている。なお，サムネイル画像の表示領域の形状は，正方形に近い形状である場合が多い。以下では，サムネイル画像の表示領域のサイズを，サムネイルサイズとする。
【００３２】
例えば，対象画像の全体に基づくサムネイル画像を表示する場合には，ＰＣ１のコントローラ３０は，対象画像の全体をサムネイルサイズに収まる縮小率で縮小した画像である全体サムネイル画像を生成する。具体的には，コントローラ３０は，対象画像の横幅に対するサムネイルサイズの横幅の割合である横縮小率と，対象画像の縦幅に対するサムネイルサイズの縦幅の割合である縦縮小率との小さい方で，対象画像全体を縮小して，全体サムネイル画像を生成する。なお，本明細書では，縮小とは，画像の縦横比を保って元の画像より小さい画像を生成することである。縮小率は，元の画像の一辺の長さに対する縮小後の画像の該当辺の長さである。縮小率として，面積比を用いてもよい。
【００３３】
対象画像が縦横比の大きい画像である場合には，全体サムネイル画像を生成する際の縮小率は，対象画像の長辺の長さに基づいて決定されるため，縮小率が小さくなりがちである。つまり，縦横比の大きい対象画像の全体サムネイル画像を表示した場合，対象画像の短辺はサムネイルサイズよりも小さく縮小されるため，短辺方向の少なくとも一方の側に多くの余白領域がある表示となる。なお，画像の縦横比は，画像の短辺の長さに対する長辺の長さの比である。縦横比が大きい原稿としては，例えば，レシートや短冊のような細長い原稿が該当する。
【００３４】
そこで，コントローラ３０は，対象画像の縦横比が大きい場合には，対象画像の一部である一部画像を抽出して，抽出した一部画像に基づくサムネイル画像である抽出サムネイル画像を生成して表示する。例えば，コントローラ３０は，対象画像を，短辺がサムネイルサイズの一辺に入る縮小率で縮小し，かつ，対象画像の長辺方向については，当該縮小率で縮小した場合にサムネイルサイズに入る範囲を抽出して一部画像とする。一方，対象画像の縦横比が大きくない場合には，コントローラ３０は，全体サムネイル画像を生成して表示する。
【００３５】
そのために，コントローラ３０は，まず，対象画像の縦横比を算出する。縦横比Ｒは，対象画像の長辺の長さＷＡと，対象画像の短辺の長さＷＢとに基づいて，Ｒ＝ＷＡ／ＷＢで求められる。そして，コントローラ３０は，縦横比が所定値よりも大きい場合，前述したように，画像の一部に基づくサムネイル画像を生成して表示する。所定値は，サムネイルサイズの縦横比よりも大きい値であり，例えば，リーガルサイズの用紙の縦横比（約１．６５）の２倍以上の値である。
【００３６】
例えば，読取対象の原稿が図２に示すようなレシートの原稿５１であった場合，レシートの原稿５１を読み取った画像データに基づいて，コントローラ３０は，長辺の長さＷＡと短辺の長さＷＢとを求め，縦横比を算出する。そして，算出した縦横比が所定値よりも大きいと判断して，コントローラ３０は，図３に示すように，一部画像５２を抽出し，抽出した一部画像５２に基づく抽出サムネイル画像を生成する。さらに，コントローラ３０は，生成した抽出サムネイル画像を，表示部１６のサムネイル画像の表示領域に表示させる。
【００３７】
続いて，前述したサムネイル表示動作をＰＣ１にて実現するサムネイル表示処理の手順について，図４のフローチャートを参照して説明する。このサムネイル表示処理は，ＰＣ１にて画像データのサムネイル表示を実行する条件を満たしたことを契機に，ＰＣ１のＣＰＵ１１によって実行される。
【００３８】
サムネイル表示を実行する条件としては，例えば，スキャナ２を制御するアプリを実行することによって，スキャナ２から送信された画像データを表示する指示を受け付けたこと，または，画像データの表示や編集を行うアプリを実行することによって，画像データの一覧表示を行う指示を受け付けたこと，が該当する。以下では，スキャナ２から送信された画像データを表示する指示を受け付けた場合について説明する。
【００３９】
サムネイル表示処理では，コントローラ３０は，まず，画像データを取得する（Ｓ１０１）。Ｓ１０１は，取得処理の一例である。Ｓ１０１では，ＰＣ１は，スキャナ２に原稿の読み取り動作を行わせ，読み取った画像データをＰＣ１に送信させる。これにより，ＰＣ１は，画像データを取得する。ＰＣ１は，スキャナ２にて読み取りの終わった原稿の１枚分ごとに画像データを取得してもよいし，１つの読取ジョブが終了してから，１ジョブ分の画像データを纏めて取得してもよい。
【００４０】
そして，ＰＣ１のコントローラ３０は，取得した画像データに基づいて，画像のエッジを抽出する（Ｓ１０２）。これにより，コントローラ３０は，画像データ中の原稿の画像の範囲を取得する。Ｓ１０２にて抽出されたエッジは，原稿の辺に対応する画像である。そして，コントローラ３０は，抽出したエッジに基づいて，画像をトリミングする（Ｓ１０３）。これにより，コントローラ３０は，取得した画像データから対象画像の範囲を取り出すことができる。
【００４１】
さらに，コントローラ３０は，Ｓ１０２にて抽出したエッジに基づいて，Ｓ１０３にてトリミングした画像の傾き補正を実行する（Ｓ１０４）。Ｓ１０４では，コントローラ３０は，画像の各辺が主走査方向または副走査方向に平行となるように，画像の傾きを補正する。特に，コントローラ３０は，画像の短辺が主走査方向に平行となるように傾きを補正する。つまり，コントローラ３０は，補正後の画像が縦長の画像になるように補正する。Ｓ１０４にて得られた画像が，サムネイル表示の対象であり，対象画像である。
【００４２】
次に，コントローラ３０は，画像の縦横比を算出する（Ｓ１０５）。具体的に，コントローラ３０は，対象画像の長辺の長さと短辺の長さとをそれぞれ取得し，長辺の長さを短辺の長さで除して縦横比を得る。そして，コントローラ３０は，Ｓ１０５にて算出した縦横比が，前述した所定値よりも大きいか否かを判断する（Ｓ１０６）。Ｓ１０６は，判断処理の一例である。
【００４３】
画像の縦横比が，所定値よりも大きいと判断した場合（Ｓ１０６：ＹＥＳ），コントローラ３０は，画像データにレイアウト情報が付加されているか否かを判断する（Ｓ１０８）。レイアウト情報は，画像が複数のコンテンツを含む場合に用いられる情報である。画像データのフォーマットによっては，コンテンツごとに，内容とサイズと配置とを示す情報であるレイアウト情報が記憶される。レイアウト情報が付加されている画像データとしては，例えば，ＰＤＦファイルがある。
【００４４】
前述したように，画像の縦横比が大きい場合，画像全体に基づくサムネイル画像を表示すると余白が大きく，縮小率が小さいために画像の内容が分かり難くなりがちであるため，ＰＣ１は，画像の一部である一部画像を抽出して表示する。そのために，コントローラ３０は，画像の縦横比が大きい場合，画像全体のうち，抽出する一部画像の範囲を決定する。
【００４５】
そして，コントローラ３０は，取得した画像データにレイアウト情報が付加されていると判断した場合（Ｓ１０８：ＹＥＳ），レイアウト情報に基づいて，一部画像の範囲を決定し，決定した一部画像を抽出する（Ｓ１０９）。コントローラ３０は，例えば，画像データに含まれるコンテンツのうち最も大きい画像を含む領域を一部画像として抽出する。コンテンツ単位で抽出すれば，ユーザにわかりやすいサムネイル表示となる可能性が高い。特に，大きい画像部分は，特徴的な画像である可能性が高い。
【００４６】
一方，コントローラ３０は，レイアウト情報が付加されていないと判断した場合（Ｓ１０８：ＮＯ），一部画像の範囲を決定して抽出する抽出処理を実行する（Ｓ１１１）。Ｓ１１１は，抽出処理の一例である。抽出処理としては，画素密度の分布に基づいて画像を抽出する第１抽出処理と，画像中の文字に着目して画像を抽出する第２抽出処理とがある。ＰＣ１は，まず第１抽出処理を実行し，適切な抽出結果が得られなかった場合に第２抽出処理を実行する。あるいは，ＰＣ１は，まず第２抽出処理を実行し，抽出結果が適切な抽出結果が得られなかった場合に第１抽出処理を実行するとしてもよい。また，ＰＣ１は，第１抽出処理と第２抽出処理とのうちいずれか一方のみを選択して実行してもよいし，いずれか一方のみを実行可能としてもよい。
【００４７】
次に，サムネイル表示処理のＳ１１１にて実行される抽出処理の１つである第１抽出処理について，図５のフローチャートを参照して説明する。第１抽出処理では，コントローラ３０は，まず，対象画像データのデータサイズが所定のデータ閾値よりも大きいか否かを判断する（Ｓ２０１）。
【００４８】
そして，データサイズが所定のデータ閾値よりも大きいと判断した場合（Ｓ２０１：ＹＥＳ），コントローラ３０は，画像のうちプレ画像領域の画像データに基づくサムネイル画像であるプレ表示画像を生成し（Ｓ２０３），生成したプレ表示画像を表示する（Ｓ２０４）。Ｓ２０３は，第３生成処理の一例であり，Ｓ２０４は，プレ表示処理の一例である。プレ画像領域はあらかじめ決められた領域であり，例えば，画像全体，画像の上端から所定範囲である。つまり，ＰＣ１は，一部画像の抽出を実行する前に，あらかじめ決められたプレ画像領域の画像に基づいて，サムネイルサイズに縮小したプレ表示画像を生成し，生成したプレ表示画像を，抽出結果に基づくサムネイル表示を行う前のプレ表示として，サムネイル画像の表示領域に表示する。
【００４９】
データサイズが大きい画像に対する画素密度の算出には，長時間が掛かる可能性がある。そのため，一部画像の抽出が終了するまでサムネイル画像の表示領域への表示を行わない場合，サムネイル画像が表示されるまでの時間が長く，ユーザが不審に感じるおそれがある。そこで，あらかじめ決められた範囲の画像に基づいて，とりあえずサムネイル表示をすることで，ユーザの不審を招かないことが期待できる。
【００５０】
一方，データサイズが所定のデータ閾値よりも大きくないと判断した場合（Ｓ２０１：ＮＯ），コントローラ３０は，Ｓ２０３とＳ２０４とをスキップして次のＳ２０６に進む。データサイズが大きくなければ，抽出結果に基づくサムネイル表示をしても長時間は掛からないと推定される。そこで，コントローラ３０は，データサイズが大きくないと判断した場合には，プレ表示を実行しない。
【００５１】
Ｓ２０１にてＮＯの場合，または，Ｓ２０４の後，コントローラ３０は，画像を所定の大きさのブロックに分割する（Ｓ２０６）。そして，コントローラ３０は，Ｓ２０６にて分割したブロックごとの画素密度を算出する（Ｓ２０７）。Ｓ２０７は，算出処理の一例である。画素密度は，ブロック内の有意な画素の密度であり，例えば，ブロック内の画素値が所定の画素閾値以上の画素の数を，ブロック内の全画素数で除した数である。なお，画素値が所定の画素閾値以上の画素とは，例えば，画像の地色とは異なる色の画素，画像の地色に対して所定以上の濃度差がある画素である。
【００５２】
次に，コントローラ３０は，Ｓ２０７にて算出したブロックごとの画素密度の偏差が大きいか否かを判断する（Ｓ２０９）。画素密度の偏差が大きいとは，ブロックごとの有意な画像の多寡の差が大きいことであり，例えば，一部の領域にのみ有意な画像が含まれている場合が該当する。そこで，ブロックごとの画素密度の偏差が大きいと判断した場合（Ｓ２０９：ＹＥＳ），コントローラ３０は，画素密度の最も高いブロックを含む領域を一部画像として抽出し（Ｓ２１０），第１抽出処理を終了する。画素密度の最も高いブロックを含む領域は，有意な画像が多く含まれていると推定される領域である。
【００５３】
一方，画素密度の偏差が大きくないと判断した場合（Ｓ２０９：ＮＯ），コントローラ３０は，この画像を非特定画像として（Ｓ２１１），第１抽出処理を終了する。非特定画像は，一部画像を抽出したサムネイル表示を実行することが好ましくないと推定される画像である。例えば，写真のように地色部分がほとんど無い画像では，一部画像を抽出してサムネイル表示を実行すると，全体の雰囲気が失われてかえって分かり難くなるおそれがある。そこで，ＰＣ１は，画素密度の偏差が大きくない画像では，縦横比が大きい画像であっても，全体の画像に基づくサムネイル表示を実行する。
【００５４】
次に，サムネイル表示処理のＳ１１１にて実行される抽出処理の１つである第２抽出処理について，図６のフローチャートを参照して説明する。この第２抽出処理は，対象画像中の文字列の並び方向，または，特定のマーク画像の有無に着目して一部画像を抽出する処理である。このうち，文字列の並び方向の判断には，ＯＣＲ（光学文字認識）の実行が必要であり，長時間が掛かる可能性がある。そのため，第２抽出処理では，コントローラ３０は，まず，プレ表示を実行する。具体的に，コントローラ３０は，プレ表示画像を生成し（Ｓ２０３），生成したプレ表示画像を表示する（Ｓ２０４）。Ｓ２０３とＳ２０４とは，第１抽出処理のものと同じ内容である。
【００５５】
そして，コントローラ３０は，対象画像に含まれる文字列の並び方向を検出し，横書きの文字列を含む画像である可能性が高いか否かを判断する文字方向検出処理を実行する（Ｓ３０１）。文字方向検出処理について，図７のフローチャートを参照して説明する。文字方向検出処理は，文字列方向判断処理の一例である。
【００５６】
文字方向検出処理では，コントローラ３０は，まず，対象画像に含まれる文字列が横書きであるとみなしてＯＣＲを実行する（Ｓ４０１）。そして，コントローラ３０は，Ｓ４０１によるＯＣＲの結果の精度を算出し，横精度αＨとする（Ｓ４０２）。横精度αＨは，文字列の並び方向が横書きであると仮定してＯＣＲを実行した結果，どの程度の意味のある単語または文章が得られたかを示す指標である。ＯＣＲの結果の精度は，ＯＣＲ処理の実行によって取得される。
【００５７】
そして，コントローラ３０は，得られた横精度αＨが，所定の横閾値αよりも大きいか否かを判断する（Ｓ４０４）。横精度αＨが横閾値αよりも大きくないと判断した場合（Ｓ４０４：ＮＯ），コントローラ３０は，対象画像は横書きの文字列を含む画像ではないとして（Ｓ４０５），文字方向検出処理を終了する。なお，文字列として読み取ることができなかった場合も，横精度αＨは小さいので，コントローラ３０は，Ｓ４０４にてＮＯと判断する。
【００５８】
一方，横精度αＨが横閾値αよりも大きいと判断した場合（Ｓ４０４：ＹＥＳ），コントローラ３０は，対象画像に含まれる文字列が縦書きであるとみなして，再びＯＣＲを実行する（Ｓ４０７）。そして，コントローラ３０は，Ｓ４０７によるＯＣＲの結果の精度を算出し，縦精度αＶとする（Ｓ４０８）。縦精度αＶは，文字列の並び方向が縦書きであると仮定してＯＣＲを実行した結果，どの程度の意味のある単語または文章が得られたかを示す指標である。
【００５９】
そして，コントローラ３０は，Ｓ４０２で得られた横精度αＨが，Ｓ４０８で得られた縦精度αＶよりも大きいか否かを判断する（Ｓ４１０）。そして，横精度αＨが縦精度αＶよりも大きくないと判断した場合（Ｓ４１０：ＮＯ），コントローラ３０は，横書きの文字列を含む画像ではないとして（Ｓ４０５），文字方向検出処理を終了する。Ｓ４１０にてＮＯの場合，この画像には縦書きの文字列が含まれている可能性を捨てきれないため，コントローラ３０は，横書きであるとはしない。
【００６０】
一方，横精度αＨが縦精度αＶよりも大きいと判断した場合（Ｓ４１０：ＹＥＳ），コントローラ３０は，対象画像は横書きの文字列が含まれている画像であるとして（Ｓ４１１），文字方向検出処理を終了する。
【００６１】
図６の第２抽出処理に戻り，Ｓ３０１の文字方向検出処理の後，コントローラ３０は，文字方向検出処理の結果から，対象画像が横書きの文字列を含む画像であるとされたか否かを判断する（Ｓ３０３）。横書きの文字列を含む画像ではないと判断した場合（Ｓ３０３：ＮＯ），コントローラ３０は，この画像を非特定画像として（Ｓ３０５），第２抽出処理を終了する。非特定画像は，第１抽出処理のＳ２１１のものと同じである。
【００６２】
前述したように，対象画像は，縦長の画像であり，一部画像を抽出する場合には，少なくとも縦方向については対象画像のうち一部画像に含まれない範囲が生じる。そして，対象画像に横書きの文字列が含まれている場合には，少なくとも１行分がサムネイル画像に含まれる可能性が高いが，縦書きの文字列であれば，１行の文字列の一部分だけとなる可能性が高い。つまり，縦書きの文字列を含む対象画像から一部画像を抽出すると，意味のある文字列とならずに，ユーザにとって分かり難いサムネイル表示となる可能性が高い。
【００６３】
例えば，図８に示す短冊の原稿６１では，一部画像を抽出してサムネイル画像とすると，どの部分を抽出しても文字列としての意味が失われ，分かり難くなる可能性が高い。そのため，ＰＣ１は，短冊の原稿６１の画像のサムネイル表示を実行する場合には，余白部分が多くても，図９に示すように，画像全体に基づく全体サムネイル画像を表示する。
【００６４】
一方，画像が横書きであると判断した場合（Ｓ３０３：ＹＥＳ），コントローラ３０は，画像中から，特定マークを検出する（Ｓ３０７）。Ｓ３０７は，検出処理の一例である。特定マークは，例えば，レシート中のショップマーク，ドルマークや円マークである。ＰＣ１は，例えば，スキャナ２にて読み取った画像やホームページの画像などから，ユーザの指示に基づいて特定マークの範囲を決定し，決定した特定マークの画像を，ＲＯＭ１２あるいはＨＤＤ１４に記憶している。つまり，ＰＣ１では，あらかじめ複数の特定マークが，ＲＯＭ１２あるいはＨＤＤ１４に記憶されている。
【００６５】
そして，コントローラ３０は，Ｓ３０７にて，画像中から，記憶している特定マークのいずれかと一致する画像部分を検出し，特定マークが検出されたか否かを判断する（Ｓ３０８）。特定マークがあると判断した場合（Ｓ３０８：ＹＥＳ），コントローラ３０は，見つかった特定マークを含む領域を一部画像として抽出して（Ｓ３０９），第２抽出処理を終了する。
【００６６】
なお，Ｓ３０７では，特定マークに限らず，特定文字との一致を検出し，Ｓ３０８では特定文字が検出されたか否かを判断してもよい。特定文字は，例えば，ショップ名，支店名，日時を示す文字列である。ＰＣ１は，例えば，特定文字として，文字列の入力を受け付け，受け付けた文字列をＲＯＭ１２あるいはＨＤＤ１４に記憶している。特定文字が有ると判断した場合，コントローラ３０は，Ｓ３０９にて，特定文字の画像を含む領域を一部画像として抽出するとよい。
【００６７】
また，コントローラ３０は，Ｓ３０８にて，１つの特定マークあるいは特定文字が見つかったら，ＹＥＳと判断して次へ進んでもよいし，所定数以上の特定マークや特定文字が見つかった場合にＹＥＳと判断してもよい。あるいは，コントローラ３０は，記憶されている全ての特定マークや特定文字の検索を画像全体に対して実行して，より多くの特定マークや特定文字を含む領域を抽出してもよい。
【００６８】
一方，特定マークあるいは特定文字が検出されなかったと判断した場合（Ｓ３０８：ＮＯ），コントローラ３０は，一部画像として抽出すべき適切な箇所が見つからないことから，この画像を非特定画像として（Ｓ３０５），第２抽出処理を終了する。なお，Ｓ３０８にてＮＯの場合，対象画像には少なくとも横書きの文字列が含まれていることから，コントローラ３０は，非特定画像とする代わりに，例えば上端の所定範囲等を一部画像としてもよいし，プレ表示画像の領域を一部画像としてもよい。
【００６９】
図５の第１抽出処理，または，図６の第２抽出処理の終了後，図４のサムネイル表示処理に戻り，コントローラ３０は，非特定画像と決定したか否かを判断する（Ｓ１１３）。非特定画像と決定した場合（Ｓ１１３：ＹＥＳ），または，Ｓ１０５にて算出した縦横比が，所定値よりも大きくないと判断した場合（Ｓ１０６：ＮＯ），コントローラ３０は，画像全体に基づくサムネイル表示を実行する。
【００７０】
具体的には，コントローラ３０は，画像全体をサムネイルサイズに縮小して全体サムネイル画像を生成し（Ｓ１１５），生成した全体サムネイル画像をサムネイル画像の表示領域に表示する（Ｓ１１６）。Ｓ１１５は，第１生成処理の一例であり，Ｓ１１６は，表示処理の一例である。つまり，この場合には，ＰＣ１は，例えば，図９に示したように，対象画像の全体サムネイル画像を表示する。
【００７１】
非特定画像ではないと決定した場合（Ｓ１１３：ＮＯ），コントローラ３０は，抽出サムネイル画像を生成する（Ｓ１１７）。Ｓ１１７は，第２生成処理の一例である。Ｓ１１１の抽出処理にて一部画像の抽出は終了しているので，コントローラ３０は，抽出した一部画像をサムネイルサイズに縮小して，抽出サムネイル画像を生成する。なお，ここでは，抽出した一部画像の縦幅と横幅とのいずれについても，抽出時に決定されたものとして説明する。つまり，抽出した一部画像の縦横比は，既に決まっているので，抽出した一部画像の縦横比とサムネイルサイズの縦横比とは，異なる場合がある。そこで，コントローラ３０は，一部画像の横幅がサムネイルサイズの横幅となる縮小率と，一部画像の縦幅がサムネイルサイズの縦幅となる縮小率とのうち，小さい方を選択して，一部画像の全体を縮小することにより抽出サムネイル画像を生成する。
【００７２】
なお，コントローラ３０は，一部画像の抽出時に，一部画像の縦幅と横幅とがサムネイルサイズの縦横比となるように，一部画像の範囲を決定してもよい。すなわち，コントローラ３０は，一部画像の抽出範囲を決定する時に，一部画像の横方向の範囲を基準として，一部画像の横幅がサムネイルサイズの横幅となる縮小率で縮小した場合に，サムネイルサイズの縦幅となる範囲を一部画像の縦方向の範囲として抽出してもよい。あるいは，コントローラ３０は，一部画像の抽出範囲を決定する時に，一部画像の縦方向の範囲を基準として，一部画像の縦幅がサムネイルサイズの縦幅となる縮小率で縮小した場合に，サムネイルサイズの横幅となる範囲を一部画像の横方向の範囲として抽出してもよい。
【００７３】
さらに，コントローラ３０は，生成した抽出サムネイル画像をサムネイル画像の表示領域に表示する（Ｓ１１８）。Ｓ１１８は，表示処理の一例である。
【００７４】
次に，コントローラ３０は，スクロール表示を実行するか否かを判断する（Ｓ１２０）。スクロール表示は，Ｓ１１８にて一部画像を表示しているサムネイル画像に対し，ユーザのスクロール指示入力を受け付け，対象画像の未表示部分を表示させる表示方法である。つまり，スクロール表示を実行することで，ＰＣ１は，抽出した一部画像以外の範囲についてもサムネイル画像として表示できる。コントローラ３０は，スクロール表示を実行する条件を満たした場合に，スクロール表示を実行すると判断する。
【００７５】
例えば，第２抽出処理のＳ３０７にて，複数の特定マークが検出された場合，コントローラ３０は，Ｓ３０９では，そのうちの１つの特定マークを含む範囲を一部画像として抽出した。この場合，スクロール表示を実行すれば，抽出した特定マーク以外の範囲を表示できる。複数の特定マークが検出されたことは，スクロール表示を実行する条件の１つである。なお，スクロール表示を行う条件は，ユーザによりスクロール表示を行うと設定されていることでもよい。
【００７６】
そして，スクロール表示を実行すると判断した場合（Ｓ１２０：ＹＥＳ），コントローラ３０は，図１０に示すようなスクロール表示のためのスクロール用画像５３を生成する（Ｓ１２２）。Ｓ１２２は，スクロール画像生成処理の一例である。スクロール用画像５３は，例えば，対象画像の短辺である横幅をサムネイルサイズの横幅とする縮小率で，対象画像全体を縮小した画像である。長辺も同じ縮小率で縮小するので，スクロール用画像５３の長辺方向の大きさは，サムネイルサイズを超えている。つまり，スクロール用画像５３の画像サイズは，サムネイルサイズよりも大きい。
【００７７】
そして，コントローラ３０は，生成したスクロール用画像５３をスクロール表示する（Ｓ１２３）。Ｓ１２３は，スクロール表示処理の一例である。スクロール表示を実行すると，ＰＣ１は，例えば，図１０に示すように，サムネイル画像の表示領域の横に，スクロールバー５４を表示する。サムネイル画像の表示領域には，例えば，スクロール用画像５３の上部５３Ａが表示される。上部５３Ａは，スクロール用画像５３のうち，サムネイルサイズの部分である。そして，スクロール用画像５３のうち，上部５３Ａ以外の部分である下部５３Ｂは，表示されない。なお，前述した一部画像５２に基づく抽出サムネイル画像の縮小率が，このスクロール用画像５３の縮小率と同じであれば，表示されるサムネイル画像は，抽出サムネイル画像と同じ範囲であってもよい。
【００７８】
そして，ＰＣ１は，ユーザによるスクロールバー５４への移動指示を受け付け，サムネイル画像の表示領域に表示される画像の範囲を変更する。ＰＣ１は，スクロールバー５４を移動させるユーザの操作を受け付けると，その移動方向にスクロール用画像５３のうちの表示範囲を移動する。ＰＣ１は，例えば，下部５３Ｂの一部を表示し，上部５３Ａの一部を表示しないとすることで，表示領域に表示されるサムネイル画像を変更する。
【００７９】
Ｓ１２３の後，Ｓ１１６の後，あるいは，スクロール表示を実行しないと判断した場合（Ｓ１２０：ＮＯ），コントローラ３０は，サムネイル表示の指示を受け付けた全画像について，処理を終了したか否かを判断する（Ｓ１２５）。全画像について終了していないと判断した場合（Ｓ１２５：ＮＯ），コントローラ３０は，Ｓ１０１に戻って，次の画像の処理を実行する。なお，ＰＣ１では，複数の画像について並行して実行できる処理については，並行して実行することで全体としての処理時間を短縮することができる。また，全画像について終了したと判断した場合（Ｓ１２５：ＹＥＳ），コントローラ３０は，サムネイル表示処理を終了する。
【００８０】
以上，詳細に説明したように，本形態のＰＣ１は，取得した画像データによって表される画像の縦横比を求め，縦横比が大きい場合には，画像の一部を抽出した一部画像をサムネイルサイズに縮小して，サムネイル画像の表示領域に表示させる。一方，画像の縦横比が大きくない場合には，ＰＣ１は，画像全体をサムネイルサイズに縮小して，サムネイル画像の表示領域に表示させる。従って，ＰＣ１は，余白が大きくなったり縮小率が小さくなったりして分かり難い可能性が高い画像については一部画像の抽出サムネイル画像を表示し，分かり難い可能性の低い画像については画像全体の全体サムネイル画像を表示する。これにより，処理負荷の増大の抑制と，サムネイル画像の視認性の向上と，の両立を図ることが期待できる。
【００８１】
なお，ＰＣ１では，前述したサムネイル表示処理に代えて，画像の縦横比が大きい場合には，始めからスクロール表示を行うとしてもよい。このようにすれば，一部画像を抽出する時間が不要であり，ユーザの希望に基づいて，サムネイル画像として表示する範囲が変更される。次に，ＰＣ１にて始めからスクロール表示をする動作を実現する直接スクロール表示処理の手順について，図１１のフローチャートを参照して説明する。
【００８２】
この直接スクロール表示処理は，ＰＣ１にて画像データのサムネイル表示を実行する条件を満たしたことを契機に，ＰＣ１のＣＰＵ１１によって実行される。サムネイル表示を実行する条件は，図４のサムネイル表示処理と同じである。なお，直接スクロール表示処理は，前述したサムネイル表示処理のうちの一部分を省略した処理であり，サムネイル表示処理と同じステップについては同じ符号を付して，説明を省略する。
【００８３】
直接スクロール表示処理では，まず，コントローラ３０は，画像データを取得し（Ｓ１０１），エッジを抽出し（Ｓ１０２），トリミングし（Ｓ１０３），傾き補正を実行する（Ｓ１０４）。さらに，コントローラ３０は，画像の縦横比を算出し（Ｓ１０５），縦横比が大きいか否かを判断する（Ｓ１０６）。
【００８４】
そして，コントローラ３０は，画像の縦横比が大きいと判断した場合には（Ｓ１０６：ＹＥＳ），スクロール用画像を生成し（Ｓ１２２），スクロール表示する（Ｓ１２３）。一方，コントローラ３０は，画像の縦横比が大きくないと判断した場合には（Ｓ１０６：ＮＯ），全体サムネイル画像を生成し（Ｓ１１５），全体サムネイル画像を表示する（Ｓ１１６）。Ｓ１１５は，サムネイル画像生成処理の一例であり，Ｓ１２３とＳ１１６とは，表示処理の一例である。
【００８５】
さらに，コントローラ３０は，全画像について処理を終了したか否かを判断し（Ｓ１２５），終了していないと判断した場合には（Ｓ１２５：ＮＯ），次の画像の処理を実行する。全画像について終了したと判断した場合（Ｓ１２５：ＹＥＳ），コントローラ３０は，直接スクロール表示処理を終了する。
【００８６】
なお，ＰＣ１は，図４のサムネイル表示処理と図１１の直接スクロール表示処理とのいずれか一方のみを実行するものであってもよい。あるいは，ＰＣ１は，サムネイル表示処理と直接スクロール表示処理との両方を実行可能であって，いずれを実行するかを，ユーザの指示入力，初期設定等に基づいて決定してもよい。
【００８７】
以上，詳細に説明したように，直接スクロール表示処理を備えるＰＣ１は，取得した画像データによって表される画像の縦横比を求め，縦横比が大きい場合には，スクロール表示を実行する。一方，画像の縦横比が大きくない場合には，ＰＣ１は，画像全体をサムネイルサイズに縮小して，サムネイル画像の表示領域に表示させる。これにより，処理負荷の増大の抑制と，サムネイル画像の視認性の向上と，の両立を図ることが期待できる。
【００８８】
なお，本実施の形態は単なる例示にすぎず，本発明を何ら限定するものではない。したがって本発明は当然に，その要旨を逸脱しない範囲内で種々の改良，変形が可能である。例えば，画像読取装置としては，スキャナに限らず，複写機，複合機，ＦＡＸ機等，画像読取機能を備えるものであれば適用可能である。また，例えば，情報処理装置としては，ＰＣに限らず，サーバ，複合機，スマートフォン，タブレット等，画像を表示する機能を備えるものであれば適用可能である。
【００８９】
また，本形態では，短辺を主走査方向に傾き補正するとしたが，長辺を主走査方向としてもよいし，画像の縦横に応じていずれを主走査方向とするかを選択するとしてもよい。
【００９０】
また，ＰＣ１にて取得する画像データは，スキャナ２を駆動して原稿を読み取らせた画像データに限らず，ＨＤＤ１４に記憶される画像データやネットワークインターフェース１８を介して接続される外部機器に記憶される画像データでもよい。その場合，エッジの抽出と傾き補正とが終了した画像データを取得できれば，Ｓ１０２とＳ１０３とをスキップする。つまり，Ｓ１０２とＳ１０３とは，スキャナ２や外部機器にて実行するとしてもよい。
【００９１】
また，文字列方向の判断と特定マークの検索とは，いずれか一方のみとしてもよい。例えば，特定マークがあると判断した場合には，文字列方向の判断はしないとしてもよい。
【００９２】
また，スクロール表示はしなくてもよい。つまり，サムネイル表示処理にて，Ｓ１２０，Ｓ１２２，Ｓ１２３の各ステップはなくてもよい。
【００９３】
また，本形態は，スキャナ２と接続されたＰＣ１にてサムネイル表示を実行する例を説明したが，スキャナ２にてサムネイル表示を実行してもよい。つまり，図４のサムネイル表示処理をスキャナ２の制御部にて実行し，スキャナ２の備える表示部にサムネイル画像を表示するとしてもよい。その場合，Ｓ１０１では，スキャナ２にて原稿を読み取ることで，画像データを取得する。また，スキャナ２の表示部がタッチパネルであればスクロール表示も可能である。一方，スキャナ２の表示部がタッチパネルではなく，スクロール表示の指示を受け付けない場合には，Ｓ１２０，Ｓ１２２，Ｓ１２３を省略する。特に，表示部に設けられた表示パネルの大きさが小さいスキャナ２では，サムネイル画像の表示領域が小さいため，一部画像を抽出してサムネイル表示することによるサムネイル画像の視認性の向上の効果が高い。
【００９４】
また，実施の形態に開示されている処理は，単一のＣＰＵ，複数のＣＰＵ，ＡＳＩＣなどのハードウェア，またはそれらの組み合わせで実行されてもよい。また，実施の形態に開示されている処理は，その処理を実行するためのプログラムを記録した記録媒体，または方法等の種々の態様で実現することができる。
【符号の説明】
【００９５】
１  ＰＣ
２  スキャナ
１１  ＣＰＵ
１６  表示部
【図１】
0006589302.tif 000002
【図２】
0006589302.tif 000003
【図３】
0006589302.tif 000004
【図４】
0006589302.tif 000005
【図５】
0006589302.tif 000006
【図６】
0006589302.tif 000007
【図７】
0006589302.tif 000008
【図８】
0006589302.tif 000009
【図９】
0006589302.tif 000010
【図１０】
0006589302.tif 000011
【図１１】
0006589302.tif 000012