(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-06-14
(45)【発行日】2024-06-24
(54)【発明の名称】画像提供システム、その制御方法、プログラムおよび記憶媒体
(51)【国際特許分類】
H04N 23/60 20230101AFI20240617BHJP
G03B 5/00 20210101ALI20240617BHJP
G03B 15/00 20210101ALI20240617BHJP
G03B 17/53 20210101ALI20240617BHJP
G03B 17/56 20210101ALI20240617BHJP
G03B 17/00 20210101ALN20240617BHJP
【FI】
H04N23/60 500
G03B5/00 D
G03B15/00 D
G03B15/00 F
G03B17/53
G03B17/56 Z
H04N23/60 300
G03B17/00 X
(21)【出願番号】P 2020048159
(22)【出願日】2020-03-18
【審査請求日】2023-03-08
(31)【優先権主張番号】P 2019115713
(32)【優先日】2019-06-21
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】100126240
【氏名又は名称】阿部 琢磨
(74)【代理人】
【識別番号】100223941
【氏名又は名称】高橋 佳子
(74)【代理人】
【識別番号】100159695
【氏名又は名称】中辻 七朗
(74)【代理人】
【識別番号】100172476
【氏名又は名称】冨田 一史
(74)【代理人】
【識別番号】100126974
【氏名又は名称】大朋 靖尚
(72)【発明者】
【氏名】平石 智宣
(72)【発明者】
【氏名】徳永 幸史
【審査官】大西 宏
(56)【参考文献】
【文献】特開2002-229101(JP,A)
【文献】特開2004-297363(JP,A)
【文献】特開2007-142896(JP,A)
【文献】特開2019-049960(JP,A)
【文献】米国特許出願公開第2002/0085762(US,A1)
【文献】米国特許出願公開第2015/0347827(US,A1)
【文献】国際公開第2015/031863(WO,A1)
【文献】国際公開第2016/088437(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 23/40 -23/76
G03B 5/00 - 5/08
G03B 15/00 -15/035
G03B 17/00
G03B 17/48 -17/55
G03B 17/56 -17/58
(57)【特許請求の範囲】
【請求項1】
ユーザによる入力に応じて、座席の購入数を受け付ける受付手段と、
前記ユーザによる入力に応じて、画像を購入するか否かを選択する選択手段と、
前記画像を購入することが選択された場合、撮像部により撮像される画像のうち、前記 ユーザにより指定された1つの座席および前記購入数に対応する範囲をトリミング範囲として、前記撮像部が前記座席側の被写体を撮像する前に決定する決定手段と、
前記撮像部により前記座席側の被写体の撮像が開始された後、前記トリミング範囲に基づき、前記撮像により撮像された画像の一部を切り出すトリミングを行ってトリミング済み画像を生成する生成手段と、
前記トリミング済み画像を前記座席を特定する座席番号とともに格納するように制御する制御手段とを有することを特徴とする画像提供システム。
【請求項2】
前記
トリミング範囲は、前記指定された1つの座席と横に並んだ1つ以上の座席および前記指定された1つの座席と前または後に並んだ1つ以上の座席のうち少なくとも1つを含むことを特徴とする請求項1に記載の画像提供システム。
【請求項3】
前記生成手段は、前記撮像部により撮像された1枚の画像から複数のトリミング済み画像を生成することを特徴とする請求項1または2に記載の画像提供システム。
【請求項4】
前記画像提供システムは、別々の位置に置かれた複数のカメラの撮像部により撮像された複数の画像を受信可能であって、
前記複数の画像のうち、前記トリミング範囲を含む画像の一部を切り出すトリミングを行うことを特徴とする請求項1乃至3のいずれか1項に記載の画像提供システム。
【請求項5】
前記制御手段は、前記ユーザによる前記座席番号の入力に応じて、前記トリミング済み画像を前記ユーザに提示するよう制御することを特徴とする請求項1乃至4のいずれか1 項に記載の画像提供システム。
【請求項6】
ユーザによる入力に応じて、座席の購入数を受け付けるステップと、
前記ユーザによる入力に応じて、画像を購入するか否かを選択するステップと、
前記画像を購入することが選択された場合、撮像部により撮像される画像のうち、前記ユーザにより指定された1つの座席および前記購入数に対応する範囲をトリミング範囲として、前記撮像部が前記座席側の被写体を撮像する前に決定するステップと、
前記撮像部により前記座席側の被写体の撮像が開始された後、前記トリミング範囲に基づき、前記撮像により撮像された画像の一部を切り出すトリミングを行ってトリミング済み画像を生成するステップと、
前記トリミング済み画像を前記座席を特定する座席番号とともに格納するように制御するステップとを有することを特徴とする画像提供システムの制御方法。
【請求項7】
コンピュータを、請求項1乃至5何れか1項に記載された画像提供システムの各手段として機能させるためのプログラム。
【請求項8】
コンピュータを、請求項1乃至5何れか1項に記載された画像提供システムの各手段として機能させるためのプログラムを格納したコンピュータが読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像提供システムに関し、特に画像を撮影し、提供する際の技術に関する。
【背景技術】
【0002】
スポーツの試合や、観光施設において楽しんでいるユーザを撮影する需要がある。特許文献1には、観客席にいるユーザが撮影エリアや撮影時刻などの撮影要求を入力すると、入力された撮影要求に基づき、カメラが観客のいるエリアを撮影することが開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1の方法では、観客の要求により、カメラの台数よりも一度に必要な撮影枚数が多くなってしまった場合には、観客の求める画像を提供できない可能性がある。
【0005】
本発明は、上記の課題に鑑み、複数の異なるトリミング画像を素早く提供することのできる画像提供システムの提供を目的とする。
【課題を解決するための手段】
【0006】
本願に係る発明の1つは、画像提供システムであって、ユーザによる入力に応じて、座席の購入数を受け付ける受付手段と、前記ユーザによる入力に応じて、画像を購入するか否かを選択する選択手段と、前記画像を購入することが選択された場合、撮像部により撮像される画像のうち、前記ユーザにより指定された1つの座席および前記購入数に対応する範囲をトリミング範囲として、前記撮像部が前記座席側の被写体を撮像する前に決定する決定手段と、前記撮像部により前記座席側の被写体の撮像が開始された後、前記トリミング範囲に基づき、前記撮像により撮像された画像の一部を切り出すトリミングを行ってトリミング済み画像を生成する生成手段と、前記トリミング済み画像を前記座席を特定する座席番号とともに格納するように制御する制御手段とを有することを特徴とする。
【発明の効果】
【0007】
本発明によれば、複数の観客の画像を一度の撮影で取得し、ユーザに応じたトリミング済み画像を素早く提供することができるという効果が得られる。
【図面の簡単な説明】
【0008】
【
図1】本実施形態における画像提供システムにおける施設配置図。
【
図2】本実施形態における画像提供システムのシステム全体構成図。
【
図3】本実施形態における画像処理装置のブロック図。
【
図4】本実施形態における、座席ごとのトリミング位置の設定の例を示す図。
【
図5】本実施形態における座席ごとのトリミング位置の設定の例を示す図。
【
図7】本実施形態におけるチケット購入処理を示すフローチャート。
【
図8】本実施形態における試合前の設定に関するフローチャート。
【
図9】本実施形態における試合開始後の処理に関するフローチャート。
【
図10】本実施形態におけるトリミング処理の例を示すフローチャート。
【
図11】本実施形態におけるグループの人数に応じた座席配置の例を示す図。
【
図12】本実施形態における座席配置における座席の関係性を示した図。
【
図13】本実施形態におけるトリミング位置の計算方法を格納したデータ構造例の図。
【
図14】本実施形態におけるトリミング位置の計算方法を格納したデータ構造例の図。
【
図15】本実施形態におけるトリミング位置の計算例を示した図。
【
図16】本実施形態において試合の終了後に画像を提供する場合のシステム全体構成図。
【
図17】本実施形態において試合の終了後に画像を提供する場合のシステム全体構成図。
【発明を実施するための形態】
【0009】
以下、本発明を実施するための例示的な実施形態を、図面を参照して詳細に説明する。ただし、この実施形態に記載されている構成要素はあくまで例示であり、この発明の範囲をそれらのみに限定する趣旨のものではない。
【0010】
図1は、本実施形態における、画像提供システムにおいてリモートコントロール撮影を行うための施設配置図である。
図1では説明の都合上、野球場を例としているが、スポーツ競技を行うスタジアムや、闘技場やコンサートを行うためのアリーナ会場、演劇やオペラを行う劇場など、多数の観客が定位置から観覧できる施設に対して適応される。
【0011】
図1(a)、(b)、(c)の野球場の例では、撮影指示部101が一塁側の内野席を撮影するためのカメラ102~105に対して同時に撮影指示を行う。本実施例では撮影を簡略化するためにカメラの台数を4台として説明するが、物理的に同時に撮影指示ができる範囲であれば、カメラの台数が本発明を限定するものではない。
【0012】
球場などで反対側の観客席の上段から撮影する場合などは、観客(被写体)までの距離が遠いため、焦点距離の大きい望遠レンズをつけていたとしても、ある程度の観客が1フレーム内に収まることになる。そのため、座席ごと・グループごとのトリミング処理が必要になってくる。また、焦点距離の大きい望遠レンズは高額であるため、投資を抑えようとすると、焦点距離を大きくすることができないため、より1フレーム内に収まる人数が増えるため、トリミング処理の必要性が増すことになる。また、1フレームの画角内に複数の観客を収めることによって、例えば1つのハイライトシーンにおける盛り上がる臨場感と表情ある複数の観客の画像を1度の撮影で取得することが可能になる。このとき、より1フレーム内に収まる人数が増えるため、トリミング処理の必要性が増すことになる。
【0013】
なお、撮影指示に関しては定期的に撮影するインターバル撮影(例えば10秒に1回のレリーズ指示をする、など)と、オペレータの撮影意思に応じて手動撮影できる2つの手段を提供する。
【0014】
また、施設によってはより競技等のイベントを見やすい位置をより高額に設定し、見にくい位置を安価に設定することがあり、複数の券種が存在するのが通例である。
図1(a)、(b)、(c)では、グラウンドに近いエリア1、席数が最も多いエリア2、それぞれ区切られた空間となっているエリア3を示している。エリア1では、より近くで観戦をしたいと考えている観客であり、席数が限られているため、何十人という単位ではなく、家族などの少ない人数で特別な時に観戦することが多いエリアである。よって、一緒に来たメンバーのみで思い出に残る画像を提供することが観客の満足度の向上につながる。エリア2では、高い頻度で観戦に来る多くのファンが観戦しているエリアであり、固まって熱意の高いファンが座っている。また、エリア2では体験として試合の観戦に来た観客や、試合自体に高い熱意のない観客など、様々な層の観客が含まれている。よって、観戦中の画像が欲しい観客もいれば、不要だと考える観客もいるエリアであり、観客の意思に応じた画像の提供をすることで観客の満足度が向上する。エリア3は、空間内で楽しむ観戦を楽しむ様子や、特定の観客が良い表情をしている画像を提供することで顧客の満足度が向上する。以上のようにエリアによって、観客のニーズが異なる。全ての観客のニーズにこたえるためには、撮影した画像を様々なパターンに応じて準備しておくことが求められるが、データ量が多くなるとコストが高くなり、観客が手軽に画像を購入できなくなるという課題もある。また、試合中に観客が観戦をしている間に画像を提供することで、観客の試合に対する満足度はより向上されるが、画像のデータ量が多いため、購入しない可能性の高い観客までの画像データをも処理しようとすると処理に時間がかかり画像の提供に時間を要してしまう。
【0015】
エリア1や3の観客は、撮影画像を購入する可能性がより高いと判断できるため、
図1(a)ではエリア1をカメラ102・103の2台でカバーしているが、
図1(b)ではエリア1よりより広いエリア2をカメラ104・105の同様2台でカバーしている。その結果、エリア1の画像に収まる人数の方がより少なくなり、観客はより大きく写るので、トリミング済み画像の解像度が高くなり、より商品性の高い画像を得ることができ、より購買につなげることができる。なお、エリア3では、エリア1よりさらに狭い範囲を2台のカメラで撮影をすることで、さらにトリミング済み画像の解像度を高くする。エリア3では、より高解像度なトリミング済み画像が取得できるため、撮影した画像の画像解析も可能となり、エリア3では構造上観覧するスペースを含めて複数のスペースがあることが多いため観覧するスペースに所定以上の観客がいることを判断したり、顔の表情を解析してより良い画像を選択したり、などエリア1よりさらに商品性の高い画像を得ることが可能となる。もしくは、エリア1では、常に観客がカメラから撮影可能な位置にいるとは限らない。よって、リモート操作でカメラの首振りを行うことのできる雲台システムを使用して、1台のカメラで複数の区切られた空間を観測しておき、観客を撮影可能になったことに応じて特定の空間の撮影をしてもよい。
【0016】
図1(c)には、撮影指示装置101から各カメラ群へと撮影指示をするための構成図を示している。撮影指示装置101は、
図1(c)に示すように複数のカメラ群AからDへと撮影指示が可能である。カメラ群Cは外野席の広いエリア4を4台でカバーし、カメラ群Dは外野席の広いエリア5を4台でカバーする。
【0017】
カメラ102-105は、光学像を電気信号に変換するCCDやCMOS素子等で構成される撮像素子(撮像センサー)等で構成されるカメラユニットである。カメラには、ズームレンズやフォーカスレンズを含むレンズ群(撮影レンズ)、絞り機能を備えるシャッター、撮像素子、撮像素子から出力されるアナログ信号をデジタル信号に変換するA/D変換器、撮像系を覆って汚れや破損を防止するバリアを含む。カメラ内の画像処理部は、カメラで撮像して取得したデータに対し所定の画素補間、縮小といったリサイズ処理や色変換処理を行う。画像処理部により得られた演算結果に基づいてカメラ内のCPUが露光制御、測距制御、AWB(オートホワイトバランス)処理を行う。カメラで撮像され、画像処理部で画像処理された表示用の画像データは後述するPCのディスプレイ04により表示される。カメラで撮像され、A/D変換器によって一度A/D変換されRAMに蓄積されたデジタル信号をD/A変換器でアナログ変換し、ディスプレイ04に逐次転送して表示することで、ライブビュー表示(LV表示)を行える。ライブビューは、静止画の撮影待機状態、動画の撮影待機状態、動画の記録時に表示可能であり、撮像された被写体像がほぼリアルタイムに表示される。CPUは、入力装置06で行われたユーザ操作に基づく撮影準備指示に応じて、AF(オートフォーカス)処理、AE(自動露出)処理、AWB処理等の動作を開始するように、カメラ、画像処理部を制御する。カメラ側のCPUは、撮影指示に応じて、本露光して撮像部素子からの信号を読み出し、撮像された画像を画像処理部で画像処理して画像ファイルを生成し、外部のストレージへ記録するまでの一連の撮影処理(本撮影)の動作を開始ように制御する。撮影指示は、PC201aの入力装置06に対するユーザ操作によって行うことも、カメラ側のシャッターボタンの押下によっても行うことができる。カメラは、静止画及び動画の撮影が可能である。
【0018】
なお、施設によっては構造上撮影するカメラ位置から座席のエリアごとに撮影距離や照度が異なるため、これらの条件によって一度の撮影で多くのエリアをカバーする本実施形態の撮影では、画質に差異がでてくることがあり、画質に応じて値段を変えたり提供枚数を多くしてもよい。また、単にグラウンドに近い席であり、カメラから距離の近い席の画像を高額に設定するのではなく、明るさ等の条件やカメラの台数により画質が良くなる座席を高額に設定するようなケースもある。
【0019】
図2は、本実施形態における、画像提供システムのシステム全体構成図である。画像処理装置201は、撮影指示部101と画像転送受信部201bと、トリミング部202と、選択・アップロード部203と、ストレージ204・205を持つ。
【0020】
図2において、各処理部101・201・202・203は1つの画像処理装置201の中に記載しているが、物理的に別の処理装置であっても構わず、処理部の構成が本発明を限定するものではない。
【0021】
撮影処理部101は、
図1同様にカメラ102~105に同時に撮影指示を行う。撮影指示に関しては定期的に撮影するインターバル撮影(例えば10秒に1回のレリーズ指示をする、など)と、オペレータの撮影意思に応じて手動撮影できる2つの手段を提供する。
【0022】
画像転送受信部201bは、カメラ102~105で撮影された画像が、カメラ側から転送されてきた画像データをストレージ204に記録する。画像データの送受信のプロトコルは、FTP(FileTransferProtocol)などを用いる。
【0023】
トリミング部202は、カメラ102~105からストレージ204に画像データが転送されたことをトリガーに、各画像データに対してトリミング処理を実施して、トリミング済み画像と座席番号をストレージ205に記録する。
【0024】
ここではストレージ204・205を別のストレージとして表現しているが、物理的には同じでも構わない。
【0025】
また、トリミング処理を行う際に、後述するチケット購入部206から事前に購入されたグループ人数・座席番号・座席配置を入手して、その情報を基にトリミング処理を実施するが、詳細な処理については
図10~15で後述する。
【0026】
選択・アップロード部203は、ストレージ205に格納されたトリミング済み画像データと座席番号、及びイベントの日時情報を配信部207(配信サーバー)にアップロードする。撮影指示部101が競技中・イベント中にインターバル撮影を行っている場合には、大量のトリミング済み画像が作成されるため、オペレータは観客が盛り上がった場面を抽出・選択して、画像を配信部207にアップロードできるようにする。選択方法は不図示であるが、画像の一覧から目視で対象画像を選択しても良いし、特定の時間を入力することで該当時間のデータを抽出できるようにしても良く、選択方法が本発明を限定するものではない。
【0027】
逆に撮影指示部101がオペレータの手動撮影しか行わない場合は、通常観客が盛り上がった場面で撮影指示を行うことになるので、特に選択せずに全画像をアップロード対象としても構わない。
【0028】
チケット購入部206は、利用者がチケットを購入するための仕組みであり、購入時の処理については
図8を用いて後述する。利用者は、購入したい日付と座席数を入力し代金を支払うことで、所望した数の座席番号を入手することになる。
【0029】
配信部207は、利用者が入力したイベント日付と座席番号をKeyに、該当日付の該当座席番号の画像データ群を利用者に提示する。利用者の入力に関しては、利用者がチケットを見て手動で入力しても良いし、チケットにQRコード(登録商標)などを印字して、それをスマートホンで読み取って認識するのでも良く、入力方法が本発明を限定するものではない。
【0030】
また、利用者への提示はスマートホンのアプリケーションでも良いし、ブラウザでアクセスするようなWebアプリケーションの形でも良く、提示方法についても本発明を限定するものではない。
【0031】
図3に、本発明を適用可能な装置の一例としての画像処理装置201の中のPC201a(パーソナルコンピュータ)の構成の一例を示す。画像処理装置201は、複数の電子機器からなるものでもよいし、一台のPCからなるものでもよい。
【0032】
図3において、内部バス09に対してCPU01、RAM03、ROM02、ディスプレイ04、入力装置06、I/F08が接続されている。内部バス09に接続される各部は、内部バス09を介して互いにデータのやりとりを行うことができるようにされている。
【0033】
RAM03は、例えばRAM(半導体素子を利用した揮発性のメモリなど)からなる。CPU01は、例えばROM02に格納されるプログラムに従い、RAM03をワークメモリとして用いて、PC201aの各部を制御する。ROM02には、画像データや音声データ、その他のデータ、CPU01が動作するための各種プログラムなどが格納される。ROM02は例えばハードディスク(HD)やROMなどで構成される。
【0034】
ディスプレイ04は、CPU01の制御に基づいて、画像やGUI(Graphical User Interface)を構成するGUI画面などを表示する。CPU01は、プログラムに従い表示制御信号を生成し、ディスプレイ04に表示するための映像信号を生成してディスプレイ04に出力するようにPC201aの各部を制御する。ディスプレイ04は出力された映像信号に基づいて映像を表示する。なお、PC201a自体が備える構成としてはディスプレイ04に表示させるための映像信号を出力するためのインターフェースまでとし、ディスプレイ04は外付けのモニタ(テレビなど)で構成してもよい。
【0035】
入力装置06は、キーボードなどの文字情報入力デバイスや、マウスやタッチパネルといったポインティングデバイス、ボタン、ダイヤル、ジョイスティック、タッチセンサ、タッチパッドなどを含む、ユーザ操作を受け付けるための入力デバイスである。なお、タッチパネルは、ディスプレイ04に重ね合わせて平面的に構成され、接触された位置に応じた座標情報が出力されるようにした入力デバイスである。
【0036】
図4、5は、本実施形態における、座席ごとのトリミング位置の設定例である。
【0037】
図4は、観客のほぼ正面のカメラから撮影された画像に対してのトリミング位置の設定例である。
図4(a)のように座席ごとにトリミング位置の矩形を定義して、横方向をX軸、縦方向とY軸の座標系と定義して、左上の頂点位置401と右下の頂点位置402の座標を後述する
図6にあるデータ構造として記憶する。
【0038】
上記の作業を撮影された画像に含まれている座席ごとに指定することで、
図4(b)のように全座席のトリミング位置が指定される。ここでは長方形の矩形として例示をしているが、多角形や楕円での矩形定義など、座標系で表すことのできる矩形であればよく、矩形の形が本発明を限定するものではない。
【0039】
図5は、観客のやや斜め上方のカメラから撮影された画像に対してのトリミング位置の設定であるが、
図4の例と同様に座席ごとにトリミング位置の矩形を定義して、X・Y軸の座標系を定義することで、座席位置が斜めになっていても左上の頂点位置501と右下の頂点位置502の座標を後述する
図6にあるデータ構造として格納することができる。
【0040】
図6は、本発明の実施形態における、各座席のトリミング位置を格納するデータ構造の例である。データ構造600は、列番号601と座席番号602とカメラ番号603と左上の頂点座標のX座標604と左上の頂点座標のY座標605と右下の頂点座標のX座標606と右下の頂点座標のY座標607を持つ。
【0041】
データ構造600では、X座標とY座標を個別のカラムと管理しているが、(X,Y)のようなリスト情報として1つのカラムで管理しても構わない。また、列番号601と座席番号602は、
図6では数値データとしているが、アルファベットなどの文字列データでも構わない。座標情報である604~607はピクセル位置を表す数値データが記録されている。
【0042】
なお、本実施形態においては、野球の試合を観戦する観客をユーザとして写真を撮影して、グループできた観客の画像をトリミングすることによって画像を提供することを説明する。しかしながら、本実施形態において説明をする野球の試合の例は一例であり、その他のスポーツの試合であっても、観光地や演劇などの場所であっても適用可能である。また、コンサートを含むエンターテインメントショーの場所であっても良く、エンターテインメントを観賞中の観客をユーザとした場合でも適用可能である。
【0043】
本実施形態におけるチケットの購入処理について
図7を用いて説明をする。
【0044】
図7は、ユーザがチケットを購入するアプリやインターネットのサイトにおいて、チケットを購入する際の処理を示したものである。この処理は、ROM02(不揮発性メモリ)に記録されたプログラムをRAM03(システムメモリ)に展開してCPU01が実行することで実現する。なお、この処理は、カメラ10や操作部105の状態に関わらず、独立して処理が開始可能となるが、カメラ10に電源が入り、操作部105へのユーザ操作を受け付け可能になると開始するものとしてもよい。
【0045】
S701では、CPU01は、ユーザからのチケットの購入枚数の入力を受け付ける。
【0046】
S702では、CPU01は、ユーザから画像購入の意思があるか否かの入力を受け付ける。S702における入力は、ユーザが画像を購入するか否かを直接購入画面において選択をできるようにしてもよいし、チケットと画像購入とがセットになっており、チケットの購入と画像購入の選択が一度にできるようにしてもよい。また、一部の座席は、ユーザが選択をしなくても画像購入がセットになっており、対象となる座席を選択した時点でユーザが画像購入の意思があるもとしてもよい。S703では、CPU01は、S702における入力において画像購入の意思があるか否かを判定する。ユーザに画像購入の意思があると判定した場合は、S704へ進み、そうでない場合には、S706へ進む。
【0047】
S704では、CPU01は、ユーザにより指定された座席を選択する。このとき、ユーザが代表となる座席を1席選択することで、S701において入力した購入枚数分の座席位置を複数パターン提示することでユーザが容易に座席を選択できるようにしてもよい。また、
図10で後述する画像のトリミングの処理においては、ユーザの座席位置の指定に応じてトリミングの範囲を変える。
【0048】
S705では、CPU01は、S704において受け付けた情報に基づいてグループ情報を生成する。グループ情報においては、代表となる座席とS701において入力された同時購入されたチケットの座席位置と紐づけた情報である。ユーザが単数であっても、S705においてはグループ情報として座席と紐づけて情報を生成する。なお、グループ情報は、同時購入されなかったチケットに記載の情報をアプリやインターネットのサイトを通して入力することで、他の座席を同じグループに追加できるようにしてもよい。ただし、グループとなる座席は縦または横に隣り合っていることが望ましい。これは、トリミングをする際に、離れた座席同士は、撮影するカメラが異なる可能性があるため、1枚のトリミング範囲に収めきれない可能性があるためである。また、トリミングした画像にグループに含まれない他の座席が多く含まれてしまうと、1人1人のサイズが小さくなってしまう。
【0049】
S706では、CPU01は、ユーザにより指定された座席を選択する。
【0050】
次に
図8を用いて本実施形態における試合開始前の設定の処理について説明をする。この処理は、試合の開始前に画像処理装置201により行われる処理を示している。この処理は、試合の前に画像処理装置201の電源オンになり、対象となる試合の準備を始める指示がシステムのオペレータからされる、もしくは試合の3時間や前日といった所定の時間の前になると開始される。この処理は、ROM02(不揮発性メモリ)に記録されたプログラムをRAM03(システムメモリ)に展開してCPU01が実行することで実現する。
【0051】
S801では、CPU01は、配信部207、チケット購入部206と接続をする。
【0052】
S802では、CPU01は、チケット購入部206から対象となる試合のチケット情報を取得する。チケット情報には、トリミング処理時に必要な同時に購入されたグループのチケット購入枚数・座席位置情報・座席配置についての情報が含まれる。また、より商品性の高い画像を選択するために、座席の種類に関する情報、内野・外野・VIPにあるのかといったエリアに関する情報、撮影対象となっているエリアの座席か否かの情報、自由席か指定席かの情報、頻繁に試合を観戦しているユーザであるかの情報、ファンクラブに加入しているか否か等の情報も含まれる。
【0053】
S803では、CPU01は、S802において取得した情報をもとにトリミングの範囲を算出する。S802で取得したグループの人数・配置パターンを用いて、後述する
図13・14で定義されている人数・パターンごとのトリミング位置の算出方法を取得し、トリミング範囲を算出する。ここでのトリミング範囲とは、トリミングする矩形の左上の頂点位置のX・Y座標、及び右下の頂点位置のX・Y座標として、この2つの頂点に囲まれた長方形の矩形のことを指す。ここでは、2つの頂点で定義される長方形の矩形を用いているが、多角形や楕円での矩形定義など、座標系で表すことのできる矩形であればよく、矩形の形が本発明を限定するものではない。
【0054】
図13・14は、本発明の実施形態における、トリミング範囲の算出方法を格納したデータ構造例の図である。
図13は、
図4のように観客のほぼ正面から撮影された画像に対する定義の例、
図14は、
図5のように観客がやや斜めに撮影された画像に対しての定義の例である。
【0055】
図13・14は、グループの人数1301と座席配置のパターン1302と左上頂点位置のX座標計算方法1303と左上頂点位置のY座標計算方法1304と右下頂点位置のX座標計算方法1305と右下頂点位置のY座標計算方法1306とグループ外席の情報1307を管理する。
【0056】
グループの人数1301と座席配置のパターン1302は、チケット購入部206から事前に取得した購入されたグループ人数・座席配置と一致する。座標計算方法1303~1306は、
図13・14の例ではグループ内のいずれかの座席位置のトリミング位置情報を用いているが、具体的なピクセル数の数字や計算式を定義しても構わない。
【0057】
グループ外席の情報1307は、座席配置パターンにおいて、矩形の中には入ってしまうがグループ内の座席として購入されていない座席位置の情報が定義されている。
【0058】
S804では、CPU01は、顔データを準備する。顔データは、S802で取得した情報をもとに、頻繁に試合を観戦しているユーザ、すなわち過去顔が多く検出された観客、そしてファンクラブに加入している観客の顔データとを準備しておく。これにより、撮影した画像の中に、顔データ中の顔と一致されたと判定された観客がいた場合に、特定の観客の画像をデータとして紐づけて集め、特定の観客にまとめて提供することができる。また、ファンクラブに加入している観客は、チケット購入時に毎回画像購入の意思を示さなくても、自動的に画像が収集されることで、試合シーズンの終了後にまとめて振り返りをすることができる。観客によっては、試合を観戦する頻度が大きく異なるので、1試合の中で、複数の画像が欲しい観客と、1試合1枚でよいが観戦した全ての試合での画像が欲しい観客とがいる可能性がある。よって、上記のように顔データを準備しておくことで、高い頻度で観戦をする観客が毎回画像購入の意思を示すための作業をしなくても、画像を提供することができる。また、毎回画像購入の意思を示すための作業を忘れてしまっても画像を提供することができる。さらに、座席位置の分からない自由席座ったとしても、特定の観客の画像を集めることができる。なお、S802において取得したチケットの購入時の情報ではなく、観戦チケットの購入とは別途観客が画像を購入するためのプランを設け、プランを選択した場合には、顔データを登録し、観客が観戦した様子を毎回画像として提供できるようにしてもよい。上記のような場合に、顔データを準備しておくことで、試合中にスムーズに観客へ画像を提供することができる。
【0059】
S805では、CPU01は、カメラ102~105で撮影した画像の撮影時刻が一致するように、各カメラの時計を同じ時刻に設定する。
【0060】
S806では、CPU01は、撮影要因の入力をする。撮影要因とは、10秒や20秒といったインターバル撮影の期間、もしくは観客の歓声が所定以上になったことに応じてといった検出に基づくものでもよい。また、撮影された試合の様子を分析したり、試合データを分析する制御部を用意しておき、試合の点数や、試合の進み具合、選手の位置に応じて、インターバルの間隔を短くしたり、動画の撮影に切り替えるようにしてもよい。また、休憩時間には、インターバル撮影を停止し、休憩時間の応援合戦やクイズといったイベントが発生する時間にはインターバル撮影を開始してもよい。なお、手動による撮影の指示を組み合わせてもよいことは言うまでもない。
【0061】
S807では、CPU01は、システムテストとして、カメラを実際に起動して撮影とトリミングに処理を行う。撮影された画像に基づいて、その日の明るさや光の入り具合に応じた撮影条件の設定をしたり、撮影した画像を座席に紐づく座標に基づいてトリミングした際に、対象となる座席を切り取ることができるのかを確認してもよい。なお、座席側に指標となるポイントとなる被写体を置いておいて、カメラが撮影した画像の中の被写体が予め定まっている座標にあるか否か、フォーカス位置が問題ないか、などを確認してもよい。また、このシステムはイベントごとに稼働させるため、以前のイベントのデータが残っている場合もあるので、カメラのデータの削除・システム内のデータの整理・削除やバックアップをこのタイミングで行っても良い。
【0062】
S808では、CPU01は、撮影条件をS807のシステムテストに基づいて設定する。
【0063】
次に
図9の(a)から(c)を用いて試合開始後の処理を示している。
図9(a)は、画像処理装置201の処理であり、
図9(b)は撮影に関する処理であり、
図9(c)は、画像をトリミングし、配信する処理である。各処理は試合が開始される、もしくは試合の開始前の撮影を開始する前に開始される。この処理は、ROM02(不揮発性メモリ)に記録されたプログラムをRAM03(システムメモリ)に展開してCPU01が実行することで実現する。
【0064】
S901では、CPU01は、途中チケット情報を取得する。途中チケット情報は、試合の開始後の購入された、もしくは、
図9のS802の処理の後に購入されたチケットに関する情報である。この情報は、チケット購入部206より取得してもよいし、チケット購入部206側から定期的、もしくは更新がある度に画像処理装置201へ通知されるようにしてもよい。
【0065】
S902では、CPU01は、カメラc=1に対応するカメラに関する情報を取得する。S902では、カメラc=1の撮影範囲と対象となる座席に関する情報を取得する。
【0066】
S903では、CPU01は、現在処理をしようとしているカメラcがカメラの全体数Kよりも大きいか否かを判定し、大きい場合には、全てのカメラに対する処理が終了したとして、S907へ進む。そうでない場合には、S904へ進む。
【0067】
S904では、CPU01は、対象となるカメラcの位置から撮影する座席の範囲でのトリミング情報を取得する。
【0068】
S905では、CPU01は、対象となるカメラcの位置から撮影をする座席の範囲での撮影要因を取得する。例えば、チームAとチームBとが対戦している場合には攻めと守りのタイミングとで撮影のインターバル期間を変えたほうがよい場合がある。また、座席の種類によっては、頻度を高く撮影をしたほうがよい場合もある。よって、カメラの撮影範囲に含まれる座席に応じて、撮影要因を取得することによって、観客に提供しない可能性の高い画像を多く撮影することなく、撮影チャンスを逃さないようにすることができる。なお、S905の撮影要因は、全てのカメラで同じでもよい。
【0069】
新たにチケットが購入されたり、新たに画像購入の意思が観客から示された、すなわち、新たなトリミンググループが発生した場合には、S904、S905において
図8のS803,S804の処理を行う。
【0070】
S906では、CPU01は、S902と同様にカメラc=c+1にして、次のカメラに関する情報を取得する。
【0071】
S907では、CPU01は、所定時間が経過したかを判定する。所定時間は、S907の判定を
図9の処理の開始後初めて行う場合には、S901からの時間、2回目以降の場合は前回S907の判定においてYesと判定してからの時間で計時をする。S907は所定時間おきに途中チケット情報を取得するためのものである。S907においてYesと判定された場合は、S901へ進み、そうでない場合は、S908へ進む。
【0072】
S908では、CPU01は、S905で撮影をされた撮影要因があったか否かを判定する。S908においてYesと判定された場合は、S909へ進み、そうでない場合は、S907へ進む。
【0073】
S909では、CPU01は、カメラ側へ撮影をする指示を通知する。
【0074】
S910では、CPU01は、トリミング情報をトリミング部202に通知をする。トリミング情報、撮影要因に関する情報は所定時間ごとにアップデートされるので、途中でチケットを購入した観客も、試合の途中からトリミング済み画像を得ることができるようになる。
【0075】
S911では、CPU01は、処理を終了するか、すなわち試合が終了し、撮影を終了するか否かを判定する。終了する場合にはS912へ進み、そうでない場合には、S901へ進む。
【0076】
S912では、CPU01は、カメラへ電源をOFFすることを通知する。
【0077】
以上説明したように、
図9においては、トリミング情報をトリミング部202に撮影の指示とほぼ同時に送るので、撮影後に素早く登録されたトリミング処理を実施することができる。トリミング部202では、カメラ側からストレージ204へ画像が送られるときには、トリミングすべきグループについて把握し、トリミング範囲を算出できているので、素早くトリミング処理をし、観客が画像を確認できるようになる。
【0078】
次に、
図9(b)の撮影に関する処理について説明をする。
図9(b)の処理は各カメラにおいて行われる処理である。
【0079】
S930では、CPU01は、カメラ側が撮影条件を取得するようにする。
【0080】
S931では、カメラ側で、撮影指示がされたか否かを判定し、撮影指示がされた場合には、S932へ進み、そうでない場合には、撮影指示がされるのを待つ。
【0081】
S932では、カメラ側で、設定された撮影条件での撮影を行う。
【0082】
S933では、CPU01は、カメラから画像転送受信部201bへ画像を転送するように制御するし、転送された画像データはストレージ204に格納される。もしくは、カメラにおいて撮影された画像は逐次ストレージ204へ転送する。
【0083】
S934では、CPU01は、
図9(b)の処理を終了するか否かの判定をする。S934の判定は、
図9(a)のS912においてカメラの電源のオフをする指示がきた場合にYesとなる。S934において
図9(b)の処理を終了すると判定した場合は、
図9(b)の処理を終了し、そうでない場合は、S931へ進む。
【0084】
次に
図9(c)の画像をトリミングし、配信する処理に関する説明をする。
【0085】
S951では、CPU01は、画像を取得する指示がされたか否かを判定する。画像を取得する指示とは、野球であればホームランがあった時刻や、ファインプレーのあった時刻などのイベント時刻において、
図8のS805において設定された時計の時刻をもとに、イベント時刻の前後に撮影された画像を取得する指示である。画像の取得指示は、イベント時刻の発生に応じて行うものとする。なお、イベント時刻でなくても例えば、試合の分析を行い、イベントが発生したことに応じて画像の撮影指示と画像の取得指示とを同時にCPU01が行ってもよい。
【0086】
S952では、CPU01は、対象画像をストレージ204から取得する。
【0087】
S953では、トリミング部202がトリミング情報を取得する。
【0088】
S954以降の処理ではトリミングの処理を開始する。
【0089】
S954では、トリミング部202がn=1の座席の情報を取得する。そして、現在トリミングをしようとしている画像を撮影したカメラの撮影範囲における座席数をmとする。本実施形態においては座席の番号に関して簡単のためにn=1からmまでとしているが、これに限らず、1台のカメラが撮影しており、かつトリミング対象となっている座席のすべてがカバーされれば、実際に球場で使用されている座席と紐づけてもよい。複数のカメラで観客の席をカバーするためには、他のカメラとの撮影の範囲と撮影範囲が被ることがある。2台のカメラから撮影をされている観客であっても、いずれか一方である1台のカメラで撮影された画像からトリミングされた画像が提供される。よって、カメラの撮影範囲とトリミング範囲とは異なることがある。S954では、全てのトリミング範囲の座席数をmとして取得する。トリミング範囲は、試合中に可変としてもよいし、予め球場側で定めておいてもよい。
【0090】
S955では、CPU01は、トリミングを行うエリアにある座席か否かを判定する。球場では、ネットやポール、屋根等によりカメラの死角になってしまったり、撮影が禁止されているエリアがある可能性がある。また、自由席など観客の位置が分からないエリアにおいては、そもそも座席の位置に対応するトリミングを行わない。よって、S955の判定はNoとする。なお、自由席であっても後述するように顔検出によるトリミングやより広い範囲のトリミングは行うことができる。S955においてYesと判定された場合は、S956へ進み、そうでない場合はS963へ進む。なお、チケットの購入時や、座席付近いにおいて画像購入ができないエリアであることを観客に示すようにしてもよい。
【0091】
S956では、CPU01は、現在トリミング対象か否かを判定している座席nがトリミング範囲にある座席数mより小さいか否かを判定する。すなわち、トリミング範囲全ての座席に対して、トリミングをするか否かの判定がし終わっていないかを確認する。S956の判定がYesである場合には、S957へ進み、そうでない場合は、S965へ進む。
【0092】
S957では、CPU01は、座席nがトリミング対象の座席か否かを判定する。トリミング対象の座席か否かは、
図7において観客が画像購入の意思を示したか否かにより決まる。すなわち、S955の判定は、トリミンググループに含まれる座席である場合にはYesとなり、そうでない場合にはNoとなる。
【0093】
S958では、CPU01は、S952で取得した画像からトリミングを行う元の画像であるトリミング画像を選択する。トリミング画像の選択は、現在対象となっている座席nのトリミンググループの観客の様子に応じて、最も表情が良いものや、前後の画像と比較して動きの大きなものを選択するようにしてもよい。また、トリミンググループごとで選択する画像を変えず、マニュアルで画像を選択したり、トリミング範囲の観客の動きを数値化し、一番大きな動きがあると思われる画像を選択してもよい。
【0094】
S959では、CPU01は、トリミング処理を実行する。トリミング処理は、
図10を用いて後述する。
【0095】
S960では、CPU01は、座席n=n+1とする。なお、すでにトリミング処理が実施済みのトリミンググループに含まれている座席nであって場合には、さらにn+1として、まだS957の判定をしていない座席を探していく。
【0096】
S961、S962では、座席nの観客のグループトリミングに入っていない場合の処理について説明をする。本実施形態においては、試合の後に観客が画像を得られるように座席番号と紐づけてエリアでのトリミングを行う。すなわち、グループトリミングのように同時購入した観客が入り、その他の観客が入らないようにトリミング範囲を決めるのではなく、30人や50人といったように予め決められた人数でのトリミングを行う。これにより、トリミングにかかる時間とデータ量を削減することができ、グループトリミングの対象となっている観客には素早く画像の提供ができるようにしつつ、そうでない観客にも後から画像を提供できるようにしている。
【0097】
S961では、CPU01は、S958と同様にトリミング画像を選択する。エリアトリミングの場合には、各座席の観客に合わせてトリミング画像を保存しておかないので、座席nの観客に応じたトリミング画像の選択は行わない。エリアトリミングの場合には、手動で画像を選択してもよいし、トリミング範囲にいる観客の動きを数値化して最も動きの大きな数値の画像を選択してもよい。もしくは、予め顔データが準備されていた観客の表情が良い、もしくは動きの大きな画像を選択するようにしてもよい。このように、グループトリミングの対象となっていない観客であっても、画像購入をする可能性の高い観客の表情が良い、もしくは大きく動いている画像を選択することで、将来、画像を購入したより多くの観客の満足度を満たすことができる。それぞれの観客の表情の良い画像を保存しておくと、データ量が多くなりコストアップにつながり、またデータの取り出しも時間を要す。購入の可能性の高い、高い頻度で観戦のする観客を優先的にして画像を選択することで、よりコストが低くさらに素早く画像を提供することができるようになる。なお、顔検出された観客には、例えば10試合や5試合といった所定の数の試合ごとに、対象の観客の画像をまとめて、観客に通知をしてもよいし、次の試合の観戦時に観客に画像を通知し、購入を促してもよい。さらに、前回の試合で撮影された画像を、次の試合のチケットの購入時に観客に提示することで、どのような画像が撮影されるのかを観客が把握し、画像購入をするか否かの判断をしやすくしてもよい。
【0098】
S962では、CPU01は、エリアトリミングをする。エリアトリミングは上述したように、所定の人数で区切った画像をトリミングする。既に他の座席nに対する処理においてエリアトリミングされた画像に含まれている座席nであった場合には、改めてエリアトリミングをせず、画像のデータ量の削減をする。
【0099】
S963、S964では、S961、S962と同様の処理を実行する。トリミング対象の座席でない自由席であれば、顔検出に基づいた処理を行い、トリミング対象座席でグループトリミング範囲の観客でない場合には、エリアトリミングをしないようにしてもよい。また、一部の熱狂的なファンが固まっていたり、団体の座っている座席においては、エリアトリミングの範囲を広く設けてもよい。例えば、同じ色の服を着ているユーザをトリミング範囲としてもよい。これにより、応援しているチームのユニフォームを着ている団体を一枚に収めることができる。
【0100】
S965では、CPU01は、トリミングした画像の中に、顔データがあったか否かを判定する。顔データがあった場合には、S966へ進み、そうでない場合は、S967へ進む。
【0101】
S966では、CPU01は、各観客のIDと画像とを結びつけ、観客が観戦中の試合における画像フラグをONにする。画像フラグがONであれば、観客に対して、いつの試合に撮影された画像があるのかを提示することができる。
【0102】
S967では、CPU01は、トリミングをした画像を配信部207へアップロードし、グループトリミングの対象となっている観客が画像を閲覧可能にする。なお、グループトリミングの対象となっている観客でなくても、トリミングした画像を提示するようにしてもよい。このとき、グループトリミングの対象外となっている観客にはウォーターマークでサンプルなどの文字をいれる。なお、アップロードしなかった画像データはストレージ204から削除、もしくは画質を落として記録することで、画像の容量を減らし、コストの削減へとつなげる。ただし、試合後、所定期間はS958、961、963で選択した画像自体と保存しておいてもよいし、削除をする前に各観客に通知をしてもよい。
【0103】
図10は、本実施形態における、トリミング処理の例を示すフローチャート図である。この処理は、ROM02(不揮発性メモリ)に記録されたプログラムをRAM03(システムメモリ)に展開してCPU01が実行することで実現する。
【0104】
CPU01は、チケット購入部206から事前に取得した購入されたグループ人数・座席番号・座席配置を読み出す(S1001)。
【0105】
図11は、本発明の実施形態における、グループの人数に応じた座席配置の例である。
図11(a)は4人のグループの座席配置例であり、パターン(1)では4人が横並びになっており、パターン(2)では2人ずつ前後に並んでいる。あくまでもパターンは一例であり、パターンの形と人数の組合せが、本発明を限定するものではない。
【0106】
同様に、
図11(b)は5人のグループの座席配置の例、
図11(c)は6人のグループの座席配置の例である。
【0107】
図12は、本発明の実施形態における、座席配置における座席の関係性を示した図である。グループ内で左下の座席位置を基準として、水平方向の座席位置を「番」、垂直方向の座席位置を「列」で表現し、水平方向右側に向かって「番」の数字がインクリメントされ、垂直方向上側に向かって「列」の番号がインクリメントされる。
【0108】
図12は
図11(b)のパターン(2)における座席配置の具体的な例を示したものである。X+2番・Y列にはグループ内の利用者はいないが、矩形をトリミングする際のデータとして必要であるため、後述する
図13・14のデータ構造においてグループ外席として定義する。
【0109】
【0110】
CPU01は、トリミング範囲、及びグループ外席情報を取得する(S1002)。なお、事前にトリミング範囲を算出せずにS1001においてトリミング範囲の算出を行ってもよい。
【0111】
CPU01は、S1002で取得したグループ情報にグループ外席の情報が存在していた場合(S1003でYES)、グループ外席に定義されている座席位置のトリミング範囲を灰色の単色で塗り潰す(S1004)。グループ外席の情報が存在していない場合(S1003でNO)には、S1004の処理はスキップする。
【0112】
S1004において、グループ外の座席のトリミング位置の全範囲を塗りつぶしてしまうと、一部上下隣のグループ内の座席のトリミング位置と重なっていることがあるため、若干トリミング位置よりも内側を塗り潰すことが望ましい。これは、グループ外の観客が写らないようにするための処理であるが、塗り潰しの方法については本発名を限定するものではなく、また、特に肖像権の問題などがなく、利用者の意思としてグループ外の人物が写っていても問題ない場合には、S1004の処理は必要がないケースもある。
【0113】
CPU01は、S1002で取得した1303~1306のトリミング位置の計算方法に従い、トリミング位置を確定させる(S1005)。
【0114】
図15は、本実施形態における、トリミング位置の計算例を示した図である。
図15(a)は、
図4のように観客のほぼ正面から撮影された画像に対する計算方法の例、
図15(b)は、
図5のように観客がやや斜めに撮影された画像に対しての計算方法の例である。
図15(a)では単純に左上座席の左上頂点と、右下座席の右下頂点をそれぞれ全体のトリミング位置の頂点として利用しているが、
図15(b)では上下列が若干ずれているため、
左上頂点
X座標=左下座席の左上頂点のX座標
Y座標=左上座席の左上頂点のY座標
右下頂点
X座標=右上座席の右下頂点のX座標
Y座標=右下座席の右下頂点のY座標
が定義されており、この計算方法を用いて左上頂点・右下頂点の座標位置を求める。
【0115】
【0116】
CPU01は、S1005で確定したトリミング位置に従い、カメラで撮影した全体画像から該当人数・座席配置に従ったトリミング位置で切り出したトリミング済み画像を生成して、ストレージ205に撮影日付・座席番号情報と共に格納する(S1006)。
【0117】
以上、説明した実施形態によれば、1枚の画像の中から複数のトリミング範囲を切り出し、素早く画像を各ユーザに提供することができるようになる。
【0118】
なお、上述した実施形態において以下のようにシステムを運用することで、観客がより容易に画像の取得をできるようにしてもよい。
・配信サーバへの閲覧要求を、チケットのQRコードの読み取りにする。
・事前にグループ情報を取得するようにしているが、処理を行う度に取得してもよい。この場合は、チケット購入システムも常にグループ情報を作り直す必要があり、それを都度トリミング部202から取得するので、システム全体としては処理が増えるが、例えば、野球の場合当日券の売り上げの割合が多く、試合開始後にグループ情報が多く作成される場合、などには有効である。
【0119】
次に、事前に観客が画像の購入意思を示さなかったが、試合の終了後に画像を購入しようとした場合について
図16、
図17を用いて説明をする。
【0120】
図16は、本実施形態における、画像提供システムのシステム全体構成図の別実施例である。画像処理装置201は、撮影指示部101と、カメラ102~105、画像転送受信部201bと、選択・アップロード部203と、ストレージ204を持つ。
【0121】
図16において、各処理部101・201b・203・204は1つの画像処理装置201の中に記載しているが、物理的に別の処理装置であっても構わず、処理部の構成が本発明を限定するものではない。同様に、配信部207とトリミング部202も物理的に別の処理装置であってもよい。
【0122】
撮影処理部101・カメラ102~105・カメラ画像転送受信部201b・チケット購入部206については、
図2の説明と同様であるため割愛する。
【0123】
選択・アップロード部203は、ストレージ204に撮影画像データが格納されたこととトリガーに、撮影画像データをイベントの日時情報と座席ごとのトリミング位置情報と共に配信部207にアップロードする。
【0124】
ここでの撮影画像データはトリミングされていない高解像のデータであるため、インターバル撮影などで撮影枚数が多くなった場合や、カメラの台数が多くなった場合には、大量のデータが配信部207にアップロードされることになり、後からグループトリミングをしようとした際には、より大量のデータをシステムが保持しなければならない。
【0125】
なお、ここでは座席ごとのトリミング位置情報を画像処理装置201から配信部207にアップロードしているが、配信部207とトリミング部202で情報を持っても良い。ただし、トリミング位置情報はあくまでもカメラ102~105で撮影される画像に対しての位置情報となるので、画像処理装置201側におけるカメラ102~105の取り付け位置や画角を変更した場合に都度更新が必要となるので、画像処理装置201と配信部207、トリミング部202のシステムがより連携して対応する必要がある。
【0126】
配信部207は、利用者が入力したイベント日付と座席番号をKeyに、トリミング部202に選択・アップロード部から取得したサムネイル位置情報と座席番号を送信し、トリミング処理を指示して、取得したトリミング済み画像を利用者に提示する。
【0127】
利用者の入力に関しては、
図2同様に利用者がチケットを見て手動で入力しても良いし、チケットや座席にQRコードなどを印字して、それをスマートホンで読み取って認識するのでも、またチケット情報が分からない場合には顔検出でもよく、入力方法は上述の方法に限られない。
【0128】
また、利用者への提示はスマートホンのアプリケーションでも良いし、ブラウザでアクセスするようなWebアプリケーションの形でも良く、提示方法についても本発明を限定するものではない。
【0129】
トリミング部202は、処理自体は
図2と同様であるが、利用者が購入を希望する都度にトリミング済み画像を生成することになり、利用者がトリミング済み画像を取得するまでの時間にそのトリミング時間が含まれてしまうため、画像の提供を素早く行うことができない。また、素早く行うためにはより画像処理を高速に実施できる環境が必要となる。
【0130】
次に、
図17においては、画像データをストレージ204に保存している場合について説明をする。
図17の処理では、
図16とは異なり、配信部207に大量の画像データが送信されることはないが、利用者からの画像購入のトリガーを受けてから画像処理装置201に対象カメラで撮影した画像を要求してアップロードしてもらうため、
図16よりも画像取得分だけ時間が長くかかってしまうので、利用者がトリミング済み画像データを取得するのにさらに時間がかかってしまう。
【0131】
【0132】
本実施例は、利用者がチケットを購入したことを前提に、次は画像購入の指示を配信部207に行ったところから処理がスタートする(ステップ1)。
【0133】
配信部207は、対象カメラの画像を画像処理装置201へ要求し(ステップ2)、画像処理装置201内においてストレージ204へと画像が要求される(ステップ3)。その後、選択・アップロード部203が画像データを配信部207へ送信(ステップ4)する。このとき、画像データには日付情報(撮影日時)、座席ごとのトリミング位置情報とトリミング前の画像データとが含まれるため、データ量が大きくなる。配信部207からトリミング部202へとトリミング指示がされる(ステップ5)と、トリミング部202がトリミングをし、トリミング済みの画像データが配信部207へと配信される(ステップ6)。その後、配信部から画像を購入した観客へとトリミング済みの画像が配信される(ステップ7)。
【0134】
このように、
図17の方法では、事前に観客が画像購入の意思を示していなくても、トリミンググループを対象としたトリミングをした画像を観客に提供することができる。しかし、システム内、装置内におけるやり取りが多く、事前に画像の購入意思のある観客よりも画像の提供にまでに時間を要する可能性がある。
【0135】
なお、観客に画像を提供する際には、座席情報も紐づけて観客に提供することで、観客がソーシャルネットワークサイト(SNS)に画像をアップロードした際に、画像をみた人がどの位置の座席であればよい画像が撮られるのかを認識することができる。
【0136】
さらに、座席の位置に応じて明るさに関する画像処理を行い、暗い部分や明るい部分に対して適正な画像を提供するようにすることで、複数座席を含む広い範囲の観客を同じ画角範囲に含めて撮影をしてもより良い画像を提供することが可能になる。同じ画角内において明るさが所定以上変わるような場合には、RAW画像を取得し、後で画像の加工をしやすくしてもよい。
【0137】
なお、
図2の画像処理装置201は1つの装置でなくても、複数の装置に分かれていてもよい。
【0138】
なお、
図7においてS701のチケット購入の直後に、S702において画像購入意思を入力することを説明したが、試合の開始前や試合中にチケットのコードや番号などのチケット情報を読み込んでS702の画像購入の意思を受け付けるようにしてもよい。このとき、S705において生成されるグループ情報は、例えば、試合の開始後など、いったん撮影が開始された後に更新されることもできる。これにより、グループの人数が当日や試合中に変更した場合であっても、グループ情報を更新することで全てのメンバーをおさめたトリミングを行うことができるようになる。また、チケットを購入する前に撮影の予約をできるようにしてもよい。この場合には、ユーザはチケットを購入し座席が決定した際に、チケット情報を読み込めば、読み込んだ座席に基づいて撮影が行われることになる。
【0139】
図11で示したグループの場合の座席配置のパターンは、CPU01が判定を行わなくても、ユーザのアプリ側でパターンを判定してもよい。
【0140】
<その他の実施形態>
本発明は、上述した各実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【0141】
上述の各実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明は、その技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【0142】
なお、画像処理装置201が行うものとして説明した上述の各種制御は1つのハードウェアが行ってもよいし、複数のハードウェア(例えば、複数のプロセッサや回路)が処理を分担することで、装置全体の制御を行ってもよい。
【0143】
また、本発明をその好適な実施形態に基づいて詳述してきたが、本発明はこれら特定の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。さらに、上述した各実施形態は本発明の一実施形態を示すものにすぎず、各実施形態を適宜組み合わせることも可能である。
【0144】
また、上述した実施形態においては、本発明を画像処理装置201に適用した場合を例にして説明したが、これはこの例に限定されず、画像に関する制御が可能な電子機器もしくは複数の電子機器からなるシステムであれば適用可能である。すなわち、本発明はパーソナルコンピュータやPDA、携帯電話端末や携帯型の画像ビューワ、ディスプレイを備えるプリンタ装置、デジタルフォトフレーム、音楽プレーヤー、ゲーム機、電子ブックリーダーなどに適用可能である。また、AI(人口知能)と結び付けて制御を行うことも適用可能であることは言うまでもない。
【0145】
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)をネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムコードを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。