JP6665575B2 - プログラム - Google Patents

プログラム Download PDF

Info

Publication number
JP6665575B2
JP6665575B2 JP2016031602A JP2016031602A JP6665575B2 JP 6665575 B2 JP6665575 B2 JP 6665575B2 JP 2016031602 A JP2016031602 A JP 2016031602A JP 2016031602 A JP2016031602 A JP 2016031602A JP 6665575 B2 JP6665575 B2 JP 6665575B2
Authority
JP
Japan
Prior art keywords
image
program
display
captured image
processing
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
JP2016031602A
Other languages
English (en)
Other versions
JP2017151579A (ja
Inventor
弘和 佐藤
弘和 佐藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
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 Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2016031602A priority Critical patent/JP6665575B2/ja
Publication of JP2017151579A publication Critical patent/JP2017151579A/ja
Priority to JP2020024909A priority patent/JP6973524B2/ja
Application granted granted Critical
Publication of JP6665575B2 publication Critical patent/JP6665575B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • User Interface Of Digital Computer (AREA)
  • Processing Or Creating Images (AREA)
  • Image Processing (AREA)
  • Studio Circuits (AREA)
  • Editing Of Facsimile Originals (AREA)

Description

本発明は、カメラに生成させた画像を台形補正する携帯端末のプログラムに関する。
引用文献1には、カメラに生成させた撮影画像を台形補正する携帯端末のプログラムが記載されている。より詳細には、引用文献1に記載のプログラムは、被写体を撮影したカメラに生成させた撮影画像をディスプレイに表示させ、撮影画像内で被写体を囲む略四角形領域の頂点の位置をユーザに指定させ、指定された略四角形領域の画像をトリミングし、トリミングした画像を台形補正する。
特開2013−218547号公報
しかしながら、カメラに被写体をズームして撮影させた場合において、撮影画像に被写体の一部が含まれない場合がある。そして、このような撮影画像内で略四角形領域の頂点の位置をユーザに指定させようとすると、本来の位置より略四角形領域の内側の位置が頂点として指定される可能性がある。その結果、このような略四角形領域の画像がトリミング及び台形補正されると、撮影画像に含まれていた被写体の一部がさらに欠けてしまう可能性がある。
本発明は、上記の事情に鑑みてなされたものであり、その目的は、カメラに生成させた撮影画像内において、台形補正すべき領域をユーザに適切に指定させることが可能な携帯端末のプログラムを提供することにある。
本明細書に記載のプログラムは、カメラと、ディスプレイと、タッチセンサを有する入力インタフェースとを備える携帯端末によって読み取り可能である。該プログラムは、対象物を撮影した前記カメラによって生成された撮影画像データを取得する取得処理と、前記撮影画像データで示される撮影画像の外縁に追加画素を付加することによって、前記撮影画像を拡張した拡張画像を示す拡張画像データを生成する拡張処理と、前記拡張画像を前記ディスプレイに表示させる第1表示処理と、前記第1表示処理で表示された前記拡張画像内において、台形画像の形状を指定するタッチ操作を、前記入力インタフェースを通じて受け付ける第1受付処理とを前記携帯端末に実行させる。前記台形画像は、長方形の前記対象物が斜めから撮影されたことによって、前記拡張画像内で台形に表された前記対象物を示す画像である。該プログラムは、前記第1受付処理で指定された形状の前記台形画像を台形補正することによって、長方形の補正画像を示す補正画像データを生成する補正処理と、前記補正画像データを出力する出力指示処理とを前記携帯端末に実行させる。
上記構成によれば、撮影画像の外縁に追加画素を付加した拡張画像内において、台形補正の対象となる台形画像をユーザに指定させることができる。すなわち、撮影画像に被写体の一部が含まれていない場合であっても、台形補正の対象となる領域をユーザに適切に指定させることができる。
図1は、本実施形態に係るシステム100の概略図である。 図2は、プリント指示処理のフローチャートである。 図3は、台形拡張処理のフローチャートである。 図4は、撮影画像の例であって、(A)は4つの直線が検出された例を、(B)は3つの直線が検出された例を示す。 図5は、拡張画像の例であって、(A)は撮影画像80に追加画素85を付加した例を、(B)は撮影画像90に追加画素95を付加した例を示す。 図6は、ディスプレイ53の表示例であって、(A)は台形指定画面を、(B)はプレビュー画面を示す。
以下、適宜図面を参照して本発明の実施形態について説明する。なお、以下に説明される実施形態は本発明の一例にすぎず、本発明の要旨を変更しない範囲で、本発明の実施形態を適宜変更できることは言うまでもない。例えば、後述する各処理の実行順序は、本発明の要旨を変更しない範囲で、適宜変更することができる。
図1は、本実施形態に係るシステム100の概略図である。図1に示されるシステム100は、複合機10と、携帯端末50とで構成されている。また、システム100は、複合機10に代えて、プリンタ単能機を含んでもよい。複合機10及び携帯端末50は、通信ネットワーク101を通じて相互に通信可能に構成されている。通信ネットワーク101の具体例は特に限定されないが、例えば、インターネット、有線LAN、無線LAN、或いはこれらの組み合わせであってもよい。
複合機10は、図1に示されるように、プリンタ11と、スキャナ12と、ディスプレイ23と、入力I/F24と、通信I/F25と、CPU31と、メモリ32と、通信バス33とを主に備える。複合機10を構成する各構成要素は、通信バス33を通じて相互に接続されている。
プリンタ11は、画像データで示される画像をシートに記録するプリント動作を実行する。プリンタ11の記録方式としては、インクジェット方式や電子写真方式などの公知の方式を採用することができる。スキャナ12は、原稿に記録されている画像を読み取って画像データを生成するスキャン動作を実行する。
ディスプレイ23は、液晶ディスプレイ、有機ELディスプレイ等であり、各種情報を表示する表示面を備える。
入力I/F24は、ユーザによる入力操作を受け付けるユーザインタフェースである。具体的には、入力I/F24はボタンを有しており、押下されたボタンに対応づけられた各種の操作信号をCPU31へ出力する。さらに、入力I/F24は、ディスプレイ23の表示面に重畳された膜状のタッチセンサを有していてもよい。ディスプレイ23の表示面に表示されたオブジェクトを指定する操作、文字列或いは数字列を入力する操作は、ユーザ操作の一例である。「オブジェクト」とは、例えば、ディスプレイ23に表示された文字列、アイコン、ボタン、リンク等である。
タッチセンサとして実現される入力I/F24は、ユーザがタッチした表示面上の位置を示す位置情報を出力する。なお、本明細書中における「タッチ」とは、入力媒体を表示面に接触させる操作全般を含む。また、入力媒体が表示面に触れていなくても、表示面との間の距離がごく僅かな位置まで入力媒体を近接させる「ホバー」或いは「フローティングタッチ」を、前述の「タッチ」の概念に含めてもよい。さらに入力媒体とは、ユーザの指であってもよいし、タッチペン等であってもよい。ディスプレイ23に表示されたアイコンの位置のタップするユーザ操作は、当該アイコンを指定する指定操作の一例である。
通信I/F25は、通信ネットワーク101を通じて外部装置と通信可能なインタフェースである。すなわち、複合機10は、通信I/F25を通じて外部装置に各種情報を出力し、通信I/F25を通じて外部装置から各種情報を受信する。通信I/F25の具体的な通信手順は特に限定されないが、例えば、Wi−Fi(Wi-Fi Allianceの登録商標)を採用することができる。
CPU31は、複合機10の全体動作を制御するものである。CPU31は、入力I/F24から出力される各種情報、通信I/F25を通じて外部装置から取得した各種情報等に基づいて、後述する各種プログラムをメモリ32から取得して実行する。CPU31及びメモリ32は、制御部の一例を構成する。
メモリ32は、プログラム記憶領域32Aと、データ記憶領域32Bとを有する。領域32Aには、OS34と、装置プログラム35とが格納される。なお、装置プログラム35は、単一のプログラムであってもよいし、複数のプログラムの集合体であってもよい。領域32Bには、装置プログラム35の実行に必要なデータ或いは情報が記憶される。メモリ32は、例えば、RAM、ROM、EEPROM、HDD、複合機10に着脱されるUSBメモリ等の可搬記憶媒体、CPU31が備えるバッファ等、或いはそれらの組み合わせによって構成される。
メモリ32は、コンピュータが読み取り可能なストレージ媒体であってもよい。コンピュータが読み取り可能なストレージ媒体とは、non−transitoryな媒体である。non−transitoryな媒体には、上記の例の他に、CD−ROM、DVD−ROM等の記録媒体も含まれる。また、non−transitoryな媒体は、tangibleな媒体でもある。一方、インターネット上のサーバなどからダウンロードされるプログラムを搬送する電気信号は、コンピュータが読み取り可能な媒体の一種であるコンピュータが読み取り可能な信号媒体であるが、non−transitoryなコンピュータが読み取り可能なストレージ媒体には含まれない。後述する携帯端末50のメモリ62についても同様である。
携帯端末50は、図1に示されるように、カメラ52と、ディスプレイ53と、入力I/F54と、通信I/F55と、CPU61と、メモリ62と、通信バス63とを主に備える。携帯端末50に含まれるディスプレイ53、入力I/F54、通信I/F55、CPU61、メモリ62、及び通信バス63は、複合機10に含まれるディスプレイ23、入力I/F24、通信I/F25、CPU31、メモリ32、及び通信バス33と同様の構成であるので、説明は省略する。CPU61及びメモリ62は、制御部の一例である。
携帯端末50は、例えば、携帯電話、スマートフォン、或いはタブレット端末等である。より詳細には、携帯端末50のディスプレイ53は、表示画面のサイズが12インチ以下、より好ましくは8インチ以下であるのが望ましい。また、携帯端末50の入力I/F54は、ディスプレイ53の表示画面に重ねられたタッチセンサであるのが望ましい。メモリ62の領域62Aには、OS64と、端末プログラム65とが格納されている。
カメラ52は、被写体を撮影して画像データ(以下、「撮影画像データ」と表記することがある。)を生成する。カメラ52の動作は、例えば、領域62Aに記憶される不図示のカメラプログラムによって制御される。すなわち、カメラプログラムは、撮影画像データで示される画像と、[撮影]アイコンとをディスプレイ53に表示させる。また、ディスプレイ53に表示される画像は、カメラ52の向きが変更されるのに追従して変更される。そして、カメラプログラムは、[撮影]アイコンを指定するユーザ操作を入力I/F54を通じて受け付けたことに応じて、撮影画像データを領域62Bに記憶させる。
[システム100の動作]
図2及び図3を参照して、本実施形態に係るシステム100の動作を説明する。
本明細書のフローチャートは、基本的に、プログラムに記述された命令に従ったCPU31、61の処理を示す。すなわち、以下の説明における「判断」、「抽出」、「選択」、「制御」等の処理は、CPU31、61の処理を表している。CPU61による処理は、OS64を介したハードウェア制御も含む。また、本明細書中の「データ」とは、コンピュータに読取可能なビット列で表される。そして、実質的な意味内容が同じでフォーマットが異なるデータは、同一のデータとして扱われるものとする。本明細書中の「情報」についても同様である。
まず、携帯端末50の端末プログラム65は、不図示のカメラプログラムを起動させる(S11)。次に、カメラプログラムは、[撮影]アイコンを指定するユーザ操作を入力I/F54を通じて受け付けたことに応じて、撮影画像データを領域62Bに記憶させ、記憶させた撮影画像データを端末プログラム65に提供する。端末プログラム65は、例えば、カメラプログラムを所謂プラグインとして起動するためのAPIを実行すればよい。また、カメラプログラムは、領域62Bに記憶させた撮影画像データのパスを当該APIの戻り値に含めればよい。そして、端末プログラム65は、戻り値に含まれるパスに基づいて撮影画像データを読み出せばよい(S12:Yes)。
本実施形態において、携帯端末50のユーザは、長方形のホワイトボードをカメラ52によって斜めから撮影したものとする。その結果、端末プログラム65は、例えばS12において、図4(A)に示される撮影画像80を示す撮影画像データ、或いは図4(B)に示される撮影画像90を示す撮影画像データを取得したものとする。ホワイトボードは、対象物の一例である。但し、対象物の具体例はホワイトボードに限定されず、黒板、ポスター、ディスプレイ等の概ね長方形或いは正方形の物であればよく、表面に文字或いは図柄等が描かれているのが望ましい。
撮影画像80は、図4(A)に示されるように、輪郭線81A、81B、81C、81Dで囲まれた長方形の画像である。撮影画像90は、図4(B)に示されるように、輪郭線91A、91B、91C、91Dで囲まれた長方形の画像である。また、撮影画像80、90は、台形画像84、94の少なくとも一部を含む。台形画像84、94は、ホワイトボードが斜めから撮影されたことによって、撮影画像80、90内で台形に表されたホワイトボードを示す画像である。
次に、端末プログラム65は、画像拡張処理を実行する(S13)。画像拡張処理は、撮影画像データで示される撮影画像に画素を追加することによって、拡張画像を生成する処理である。すなわち、拡張画像は、撮影画像を拡張した画像である。図3を参照して、画像拡張処理の詳細を説明する。
まず、端末プログラム65は、ハフ変換等の周知のアルゴリズムを用いて、撮影画像に含まれる所定の長さ以上の直線を検出する(S31)。また、端末プログラム65は、S31で検出した直線の数を判断する(S32)。S31の処理は検出処理の一例であり、S32の処理は、第1判断処理の一例である。
一例として、端末プログラム65は、図4(A)に示される撮影画像80内において、4つの直線82A、82B、82C、82Dを検出する。他の例として、端末プログラム65は、図4(B)に示される撮影画像90内において、3つの直線92A、92B、92Cを検出する。但し、S31で検出される直線の数は図4の例に限定されず、2つ以下の場合もあり得る。
次に、端末プログラム65は、例えば図4(B)に示されるように、3つの直線92A〜92Cを検出したと判断したことに応じて(S32:3)、撮影画像90の4つの輪郭線91A〜91Dの1つを、第4の直線に決定する(S33)。S33の処理は、決定処理の一例である。一方、端末プログラム65は、図4(A)に示されるように、4つの直線82A〜82Dを検出したと判断したことに応じて(S32:4)、S33の処理をスキップする。
端末プログラム65は、例えばS33において、S31で検出した3つの直線92A〜92Cのうち、平行に近い2つの直線92A、92Cを対となる直線と判断する。対となる直線92A、92Cは、台形画像94の対辺を構成し得る直線である。そして、端末プログラム65は、撮影画像90の4つの輪郭線91A〜91Dのうち、対となる直線が存在しない直線92Bから最も離れた輪郭線91Dを、第4の直線に決定する。
次に、端末プログラム65は、S31で検出した4つの直線の交点の位置、或いはS31で検出した3つの直線及びS33で決定した1つの直線の交点の位置を特定する。そして、端末プログラム65は、特定した交点の位置を台形画像84、94の頂点の位置と推定する(S34)。S34の処理は、推定処理の一例である。一例として、端末プログラム65は、図4(A)に示される撮影画像80において、各直線の交点の位置を、台形画像84の頂点83A、83B、83C、83Dと推定する。他の例として、端末プログラム65は、図4(B)に示される撮影画像90において、各直線の交点の位置を、台形画像94の頂点93A、93B、93C、93Dと推定する。なお、図4に示されるように、S34で推定される頂点の一部は、撮影画像80、90外に位置してもよい。
次に、端末プログラム65は、S34で推定した4つの頂点の位置が撮影画像内か否かを判断する(S35)。そして、端末プログラム65は、少なくとも1つの頂点の位置が撮影画像外だと判断したことに応じて(S35:No)、拡張画像を示す拡張画像データを生成する(S36)。一方、端末プログラム65は、全ての頂点の位置が撮影画像内だと判断したことに応じて(S35:Yes)、S36の処理をスキップする。S35の処理は第2判断処理の一例であり、S36の処理は拡張処理の一例である。
端末プログラム65は、S36において、撮影画像の外縁に追加画素を付加することによって、拡張画像データを生成する。一例として、端末プログラム65は、図4(A)に示される撮影画像80の外縁に、図5(A)に示される追加画素85を輪郭線81Cに沿って付加した拡張画像86を生成する。他の例として、端末プログラム65は、図4(B)に示される撮影画像90の外縁に、図5(A)に示されるL字型の追加画素95を輪郭線91C、91Dに沿って付加した拡張画像96を生成する。拡張画像86、96は、台形画像84、94の全体を含む。
すなわち、追加画素85、95は、撮影画像80、90の外に位置する頂点83C、93Cに最も近い輪郭線81C、91Cに沿って設けられるのが望ましい。また、追加画素95は、S33で直線に決定した輪郭線91Dに沿って設けられるのが望ましい。但し、追加画素85、95の形状は、図5の例に限定されない。一例として、追加画素85、95は、輪郭線81C、91C、91Dの全域に設けられていなくてもよい。すなわち、拡張画像86、96は、長方形でなくてもよい。他の例として、端末プログラム65は、図6(A)に示されるように、撮影画像80を囲む枠型の追加画素87を付加した拡張画像88を生成してもよい。
また、追加画素85、95の幅は、例えば、撮影画像80、90の外に位置する頂点83C、93Cの位置と、S31で検出した直線の数とによって、適宜設定される。まず、端末プログラム65は、撮影画像80、90の外に位置する頂点83C、93Cが、拡張画像86、96の輪郭線より内側に位置するように、追加画素85、95の幅を設定すればよい。また、端末プログラム65は、S31で検出した直線の数が少ない程、追加画素85、95の幅を大きくすればよい。
一方、端末プログラム65は、S31で2つ以下の直線を検出したと判断したことに応じて(S32:2以下)、S33〜S36に代えて、例えば図6(A)に示されるように、撮影画像80の周囲を囲む枠型の追加画素87を付加することによって、拡張画像88を示す拡張画像データを生成する(S37)。S37の処理は、拡張処理の一例である。本実施形態では、S36で撮影画像80に枠型の追加画素87が付加されたものとして、以下の処理の説明する。また、S36の処理がスキップされた場合(S35:Yes)、以下の処理において、拡張画像88に代えて撮影画像80が用いられる。
図2に戻って、端末プログラム65は、図6(A)に示される台形指定画面をディスプレイ53に表示させる(S14)。台形指定画面は、拡張画像88と、ガイド画像111、112、113、114と、[補正]アイコン115とを含む。ガイド画像111〜114は、S34で推定した頂点83A〜83Dの位置を示す画像であって、拡張画像88に重ねて表示される。[補正]アイコン115は、台形画像を台形補正する指示に対応する。そして、端末プログラム65は、台形指定画面に対するユーザ操作を、入力I/F54を通じて受け付ける(S15)。S14の処理は第1表示処理の一例であり、S15の処理は第1受付処理の一例である。
なお、端末プログラム65は、S14において、追加画素87に非背景画素値が設定された拡張画像88を、台形指定画面に表示させてもよい。端末プログラム65は、例えば、S36、S37で生成した拡張画像データをコピーし、コピーした拡張画像データに含まれる追加画素87に非背景画素値を設定し、当該拡張画像データで示される拡張画像88を、台形指定画面に表示させればよい。非背景画素値は、撮影画像の背景画素の画素値と異なる画素値である。背景画素の画素値は、例えば、撮影画像に含まれる画素値のヒストグラムの最頻値を指す。また、端末プログラム65は、S31で2つ以下の直線を検出した場合に(S32:2以下)、拡張画像88上の予め定められた位置にガイド画像111〜114を表示してもよい。
次に、端末プログラム65は、例えばガイド画像113の位置に対するドラッグ操作を入力I/F54を通じて受け付けたことに応じて(S15:ガイド画像)、台形指定画面上でガイド画像113の位置を変更する(S16&S14)。より詳細には、端末プログラム65は、ガイド画像113の位置にタッチされた入力媒体が表示面上で移動されたことに応じて、当該入力媒体に追随してガイド画像113の位置を変更する。そして、端末プログラム65は、入力媒体が離間された位置、すなわちドラッグ操作の終了位置を、ガイド画像113の新たな位置に決定する。
ガイド画像113は、台形指定画面の拡張画像88内の任意の位置、すなわち、撮影画像80及び追加画素87内の任意の位置に移動させることができる。一方、ガイド画像113は、台形指定画面の拡張画像88外に移動させることができない。ガイド画像111、112、114に対するドラッグ操作についても同様である。ドラッグ操作は、ガイド画像111〜114の位置を変更するタッチ操作、及び台形画像84の形状を指定するタッチ操作の一例である。なお、台形画像の形状を指定するタッチ操作は、ガイド画像111〜114に対するドラッグ操作に限定されない。例えば、端末プログラム65は、台形画像84を構成する辺の位置に対するドラッグ操作を入力I/F54を通じて受け付けたことに応じて、当該辺の位置及び角度を変更してもよい。
次に、端末プログラム65は、[補正]アイコン115の指定を入力I/F54を通じて受け付けたことに応じて(S15:補正アイコン)、ガイド画像111〜114の位置を頂点とする台形画像84を、拡張画像88から抽出する。そして、端末プログラム65は、抽出した台形画像84を台形補正して、長方形の補正画像を示す補正画像データを生成する(S17)。S17の処理は、補正処理の一例である。
ガイド画像111〜114の少なくとも1つが追加画素87の位置に配置されている場合、端末プログラム65は、撮影画像80の画素と、追加画素87とを含む台形画像84を抽出する。また、端末プログラム65は、例えば、ガイド画像111〜114の位置を頂点とする台形画像84に対して、上辺及び短辺が平行になるように画素を補間することによって、補正画像データを生成する。台形補正は、例えば、射影変換等の周知のアルゴリズムによって実現される。
次に、端末プログラム65は、図6(B)に示されるプレビュー画面をディスプレイ53に表示させる(S18)。プレビュー画面は、S17で生成された補正画像121と、[プリント]アイコン122と、[保存]アイコン123とを含む。[プリント]アイコン122は、補正画像データに対するプリント動作を複合機10に実行させる指示に対応する。[保存]アイコン123は、補正画像データを領域62Bに記憶させる指示に対応する。そして、端末プログラム65は、プレビュー画面に対するユーザ操作を、入力I/F54を通じて受け付ける(S19)。S18の処理は第2表示処理の一例であり、S19の処理は第2受付処理の一例である。
そして、端末プログラム65は、[プリント]アイコン122の指定を入力I/F54を通じて受け付けたことに応じて(S19:プリントアイコン)、通信I/F55を通じて複合機10にプリント指示情報を送信する(S20)。プリント指示情報は、補正画像データに対するプリント動作を指示するための情報であって、補正画像データを含む。一方図示は省略するが、複合機10の装置プログラム35は、通信I/F25を通じて携帯端末50からプリント指示情報を受信する。そして、装置プログラム35は、受信したプリント指示情報に従ったプリント動作をプリンタ11に実行させる。
一方、端末プログラム65は、[保存]アイコン123の指定を入力I/F54を通じて受け付けたことに応じて(S19:保存アイコン)、補正画像データを領域62Bに記憶させる(S21)。なお、端末プログラム65は、S20、S21で出力する補正画像データが追加画素を含む場合に、当該追加画素に撮影画像の背景画素値を設定してもよい。[プリント]アイコン122或いは[保存]アイコン123の指定は、指示操作の一例である。S20、S21の処理は、出力指示処理の一例である。
[実施形態の作用効果]
上記の実施形態によれば、撮影画像の外縁に追加画素を付加した拡張画像内において、台形補正の対象となる台形画像をユーザに指定させることができる。すなわち、撮影画像に被写体の一部が含まれていない場合であっても、台形補正の対象となる領域をユーザに適切に指定させることができる。
なお、図5の例のように、追加画素85、95を必要な箇所に選択的に付加することによって、台形指定画面において撮影画像80、90を相対的に大きく表示させることができる。一方、図6(A)に示されるように、枠型の追加画素87を撮影画像80に付加することによって、撮影画像80及び拡張画像88の中心が一致するので、撮影時のアングルに近い拡張画像88を台形指定画面に表示させることができる。また、撮影画像80、90の外側に台形画像84、94の頂点83C、93Cが位置する場合にのみ撮影画像80、90が拡張されるので、不必要な追加画素の付加が抑制される。
また、上記の実施形態によれば、台形画像84の頂点83A〜83Dの位置を推定し、推定された頂点83A〜83Dの位置を示すガイド画像111〜114を拡張画像88に重ねて表示し、表示されたガイド画像111〜114の位置を必要に応じてユーザに変更させる。これにより、台形画像84を指定するユーザ操作を簡略化することができる。また、適切な補正画像121が生成されたか否かを、プレビュー画面を通じてユーザに確認させてから、補正画像データを出力することができる。
また、上記の実施形態によれば、台形指定画面において、追加画素87に非背景画素値を設定することによって、撮影画像80に含まれる画素と追加画素87とをユーザに区別させることができる。これにより、追加画素87に重ねられたガイド画像113が適切な位置に表示されているか否かの確認を、ユーザに促すことができる。一方、補正画像データに含まれる追加画素に背景画素値を設定することにより、出力された補正画像データで示される補正画像内において、追加画素を目立たなくすることができる。
また、上記の実施形態の複合機10及び携帯端末50において、メモリ32、62の領域32A、62Aに記憶された各種プログラムがCPU31、61によって実行されることによって、本発明の制御部が実行する各処理が実現される例を説明した。しかしながら、制御部の構成はこれに限定されず、その一部又は全部を集積回路等のハードウェアで実現してもよい。
さらに、本発明は、複合機10及び携帯端末50として実現できるだけでなく、複合機10及び携帯端末50に処理を実行させるプログラムとして実現してもよい。そして、当該プログラムは、non−transitoryな記録媒体に記録されて提供されてもよい。non−transitoryな記録媒体は、CD−ROM、DVD−ROM等の他、通信ネットワーク101を通じて複合機10及び携帯端末50に接続可能なサーバに搭載された記憶部を含んでもよい。そして、サーバの記憶部に記憶されたプログラムは、当該プログラムを示す情報或いは信号として、インターネット等の通信ネットワーク101を通じて配信されてもよい。
10・・・複合機
11・・・プリンタ
23,53・・・ディスプレイ
24,54・・・入力I/F
25,55・・・通信I/F
31,61・・・CPU
32,62・・・メモリ
35・・・装置プログラム
50・・・携帯端末
65・・・端末プログラム

Claims (10)

  1. カメラと、ディスプレイと、タッチセンサを有する入力インタフェースとを備える携帯端末によって読み取り可能なプログラムであって、
    該プログラムは、
    対象物を撮影した前記カメラによって生成された撮影画像データを取得する取得処理と、
    前記撮影画像データで示される撮影画像の外縁に追加画素を付加することによって、前記撮影画像を拡張した拡張画像を示す拡張画像データを生成する拡張処理と、
    前記拡張画像を前記ディスプレイに表示させる第1表示処理と、
    前記第1表示処理で表示された前記拡張画像内において、台形画像の形状を指定するタッチ操作を、前記入力インタフェースを通じて受け付ける第1受付処理とを前記携帯端末に実行させ、前記台形画像は、長方形の前記対象物が斜めから撮影されたことによって、前記拡張画像内で台形に表された前記対象物を示す画像であり、
    該プログラムは、
    前記第1受付処理で指定された形状の前記台形画像を台形補正することによって、長方形の補正画像を示す補正画像データを生成する補正処理と、
    前記補正画像データを出力する出力指示処理とを前記携帯端末に実行させるプログラム。
  2. 該プログラムは、
    前記撮影画像に含まれる前記台形画像の頂点の位置を推定する推定処理を前記携帯端末に実行させ、
    前記第1表示処理において、前記推定処理で推定した頂点の位置を示すガイド画像を、前記拡張画像に重ねて前記ディスプレイに表示させ、
    前記第1受付処理において、前記追加画素に重ねて表示された前記ガイド画像の位置を変更するタッチ操作を、前記入力インタフェースを通じて少なくとも受け付けることが可能であり、
    前記補正処理において、前記第1受付処理で変更された前記ガイド画像の位置を頂点とする前記台形画像を台形補正する請求項1に記載のプログラム。
  3. 該プログラムは、前記第1受付処理において、前記追加画素に重ねて表示された前記ガイド画像の位置に対するドラッグ操作を、当該ガイド画像に対応する頂点の位置を前記ドラッグ操作の終了位置に変更するタッチ操作として受け付ける請求項2に記載のプログラム。
  4. 該プログラムは、
    前記撮影画像に含まれる所定の長さ以上の直線を検出する検出処理と、
    前記検出処理で検出した直線の数を判断する第1判断処理とを前記携帯端末に実行させ、
    4つの直線を検出したと前記第1判断処理で判断した場合の前記推定処理において、前記検出処理で検出した直線の各交点の位置を、前記台形画像の頂点の位置として推定する請求項2又は3に記載のプログラム。
  5. 該プログラムは、
    3つの直線を検出したと前記第1判断処理で判断したことに応じて、前記撮影画像の輪郭線の1つを第4の直線に決定する決定処理を前記携帯端末に実行させ、
    前記推定処理において、前記検出処理で検出した直線及び前記決定処理で決定した直線の各交点の位置を、前記台形画像の頂点の位置として推定する請求項4に記載のプログラム。
  6. 該プログラムは、
    前記推定処理で推定した全ての頂点の位置が前記撮影画像内か否かを判断する第2判断処理を前記携帯端末に実行させ、
    全ての頂点の位置が前記撮影画像内だと前記第2判断処理で判断したことに応じて、前記拡張処理を前記携帯端末に実行させず、且つ前記第1表示処理で前記撮影画像を前記ディスプレイに表示させ、
    少なくとも1つの頂点の位置が前記撮影画像外だと前記第2判断処理で判断したことに応じて、当該頂点が前記拡張画像に含まれるように、前記撮影画像に前記追加画素を付加する前記拡張処理を前記携帯端末に実行させる請求項4又は5に記載のプログラム。
  7. 2つ以下の直線を検出したと前記第1判断処理で判断したことに応じて、前記推定処理を前記携帯端末に実行させず、且つ前記撮影画像の周囲を囲むように、前記撮影画像に前記追加画素を付加する前記拡張処理を前記携帯端末に実行させる請求項4から6のいずれかに記載のプログラム。
  8. 該プログラムは、前記第1表示処理において、前記追加画素に非背景画素値が設定された前記拡張画像を前記ディスプレイに表示させ、前記非背景画素値は、前記撮影画像の背景画素の画素値と異なる画素値である請求項1から7のいずれかに記載のプログラム。
  9. 該プログラムは、前記出力指示処理において、前記追加画素に背景画素値が設定された前記補正画像データを出力し、前記背景画素値は、前記撮影画像の背景画素の画素値である請求項1から8のいずれかに記載のプログラム。
  10. 該プログラムは、
    前記補正画像を前記ディスプレイに表示させる第2表示処理と、
    前記補正画像データの出力を指示する指示操作を、前記入力インタフェースを通じて受け付ける第2受付処理と、
    前記第2受付処理で前記指示操作を受け付けたことに応じて、前記出力指示処理とを前記携帯端末に実行させる請求項1から9のいずれかに記載のプログラム。
JP2016031602A 2016-02-23 2016-02-23 プログラム Active JP6665575B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2016031602A JP6665575B2 (ja) 2016-02-23 2016-02-23 プログラム
JP2020024909A JP6973524B2 (ja) 2016-02-23 2020-02-18 プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016031602A JP6665575B2 (ja) 2016-02-23 2016-02-23 プログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2020024909A Division JP6973524B2 (ja) 2016-02-23 2020-02-18 プログラム

Publications (2)

Publication Number Publication Date
JP2017151579A JP2017151579A (ja) 2017-08-31
JP6665575B2 true JP6665575B2 (ja) 2020-03-13

Family

ID=59740852

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016031602A Active JP6665575B2 (ja) 2016-02-23 2016-02-23 プログラム

Country Status (1)

Country Link
JP (1) JP6665575B2 (ja)

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4169464B2 (ja) * 1999-12-28 2008-10-22 株式会社リコー 画像処理方法と画像処理装置及びコンピュータ読み取り可能な記録媒体
JP2004310726A (ja) * 2003-03-24 2004-11-04 Fuji Xerox Co Ltd 画像検査方法、画像検査装置、およびプログラム
JP2006074512A (ja) * 2004-09-02 2006-03-16 Casio Comput Co Ltd 撮影装置、撮影装置の画像処理方法及びプログラム
JP4856263B2 (ja) * 2009-08-07 2012-01-18 シャープ株式会社 撮像画像処理システム、画像出力方法、プログラムおよび記録媒体
JP2013218547A (ja) * 2012-04-10 2013-10-24 Seitosha Co Ltd 携帯電話機用トリミングプログラム、携帯電話機及び画像の保存方法
US8948508B2 (en) * 2012-10-31 2015-02-03 Medsnap, Llc System and method of adaptive color correction for pill recognition in digital images
US9678642B2 (en) * 2015-05-29 2017-06-13 Lexmark International, Inc. Methods of content-based image area selection

Also Published As

Publication number Publication date
JP2017151579A (ja) 2017-08-31

Similar Documents

Publication Publication Date Title
US10354162B2 (en) Information processing apparatus, information processing method, and storage medium
JP5722482B2 (ja) 画像処理システムおよび画像処理方法
KR101450782B1 (ko) 화상 처리 장치 및 프로그램
US9354801B2 (en) Image processing apparatus, image processing method, and storage medium storing program
JP6808330B2 (ja) 情報処理装置、情報処理方法、及びプログラム
US9323494B2 (en) Image processing system, image processing apparatus, portable information terminal, computer-readable storage medium with enhanced display capabilities
US10853010B2 (en) Image processing apparatus, image processing method, and storage medium
US20120120099A1 (en) Image processing apparatus, image processing method, and storage medium storing a program thereof
JP2023144065A (ja) 画像処理装置及び画像処理方法
KR102038741B1 (ko) 화상 처리 장치, 화상 처리 방법 및 저장 매체
JP5871606B2 (ja) 画像形成装置及び画像表示方法、並びにプログラム
JP6880687B2 (ja) プログラム及びシステム
JP2018088204A (ja) 画像処理装置及びプログラム
US10270932B2 (en) Non-transitory computer-readable medium and portable device
JP6589302B2 (ja) 情報処理装置,画像読取装置,および画像表示方法
JP6973524B2 (ja) プログラム
JP6665575B2 (ja) プログラム
JP6607083B2 (ja) プログラムおよび情報処理装置
US20160035062A1 (en) Electronic apparatus and method
JP5968926B2 (ja) 情報処理装置及び情報処理プログラム
JP6260177B2 (ja) 画像処理システム、画像処理方法、及び画像処理プログラム
JP2020145632A (ja) 画像処理装置、画像処理システムおよびプログラム
JP5976708B2 (ja) 電子機器及び操作支援プログラム
JP6379775B2 (ja) 制御プログラム、および、情報処理装置
JP5790225B2 (ja) 画像形成装置、画像処理方法、および制御プログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20180219

RD05 Notification of revocation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7425

Effective date: 20180219

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190212

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200109

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200121

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200203

R150 Certificate of patent or registration of utility model

Ref document number: 6665575

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150