JP6267224B2 - 最良の写真を検出及び選択する方法及びシステム - Google Patents

最良の写真を検出及び選択する方法及びシステム Download PDF

Info

Publication number
JP6267224B2
JP6267224B2 JP2015546463A JP2015546463A JP6267224B2 JP 6267224 B2 JP6267224 B2 JP 6267224B2 JP 2015546463 A JP2015546463 A JP 2015546463A JP 2015546463 A JP2015546463 A JP 2015546463A JP 6267224 B2 JP6267224 B2 JP 6267224B2
Authority
JP
Japan
Prior art keywords
photos
photo
photograph
determining
criteria
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
JP2015546463A
Other languages
English (en)
Other versions
JP2016505950A (ja
Inventor
アラステア サザーランド,
アラステア サザーランド,
カディル ラトナヴェール,
カディル ラトナヴェール,
エド スミス,
エド スミス,
Original Assignee
リアルネットワークス,インコーポレーテッド
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 リアルネットワークス,インコーポレーテッド filed Critical リアルネットワークス,インコーポレーテッド
Publication of JP2016505950A publication Critical patent/JP2016505950A/ja
Application granted granted Critical
Publication of JP6267224B2 publication Critical patent/JP6267224B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/51Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • G06F16/5838Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • G06F16/5854Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using shape and object relationship
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/751Comparing pixel values or logical combinations thereof, or feature values having positional relevance, e.g. template matching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/758Involving statistics of pixels or of feature values, e.g. histogram matching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/168Feature extraction; Face representation
    • G06V40/171Local features and components; Facial parts ; Occluding parts, e.g. glasses; Geometrical relationships

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Health & Medical Sciences (AREA)
  • Library & Information Science (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Multimedia (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Medical Informatics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Computing Systems (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Human Computer Interaction (AREA)
  • Evolutionary Biology (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Image Processing (AREA)
  • Processing Or Creating Images (AREA)
  • Image Analysis (AREA)

Description

本発明は、最良の写真を検出及び選択する方法及びシステムに関する。
デジタル写真撮影により、フィルムからのネガ及びプリントの現像に時間及び費用をかけることなく、何百枚、何千枚でさえも、デジタル写真を撮ることが可能となっている。その結果、現在では一般的に、同じ被写体について多くの写真が撮られる。このようにとられた写真の中には、露出過度又は露出不足であったり、ピントがずれていたり、被写体の人間が目を閉じている等の様々な理由を有する写真よりも、良いものがある。ユーザは、手動でデジタル写真を見直し、あまり望ましくない写真を消去し、良い写真をフォルダに移動するか、さもなければ、「悪い」ものから「良い」ものをより分けるために、写真にタグ付けしなければならない。何百枚又は何千枚の写真がある状況において、これは大変な作業であり、手動で行った場合、未完了に終わることがよくある。
しかしながら、コンピュータのソフトウェアによって、これらのプロセスをプログラムで実行することは、簡単なことではない。
同一又は類似の被写体の写真をプログラムで識別した後、類似の被写体の写真から、「より良い」写真に対応する基準に合った写真を選択できるシステムが必要となる。
写真群の中でどの写真が類似するかを判定し、類似する写真をグループ化した後、グループの中でどの写真が「より良い」写真の基準に合うかを判定するソフトウェアルーチンを提供する。
本発明は、記憶装置を備えたコンピュータにおいて、類似する写真をグループ化し且つ各グループの中で最良の写真を選択する方法であって、前記コンピュータの前記記憶装置の中の二つ以上の写真に対して、前記二つ以上の写真のうちの少なくとも二つが類似していることを判定することと、類似していると判定された写真の各セット内において、前記セットのどの前記写真が一組の基準に合うかを識別することと、各セット内の前記基準に合わない前記写真を隠すこと、を含む。
本件で示す実施形態に係るコンピュータ装置の例を示すネットワーク及び装置の簡略図。 プログラムにより、類似性によって写真をグループ化するとともに、各グループの中で最良の写真を識別するための基準に合う写真を識別するプロセスの概要を示すフローチャート。 図2に示すプロセスであって、類似グループを判定するプロセスの詳細を示すフローチャート。 図2に示すプロセスであって、各グループの中で最良の写真を選択するとともに、選択しなかった写真を隠すプロセスの詳細を示すフローチャート。 図4に示すプロセスであって、写真の露出過度及び露出不足を評価するプロセスの詳細を示すフローチャート。 図3に示すプロセスであって、「earth mover’s distance」値を判定する前における写真の処理のプロセスの詳細を示すフローチャート。 図3に示すプロセスであって、写真の主調色を判定するプロセスの詳細を示すフローチャート。 4つの副正方形に分割された一つの大きな正方形、及び大きな正方形の中心にある追加の副正方形を有する長方形の写真を示す図。 例示的なサーバコンピュータ装置(GSサーバ)、並びに、データ構造及び/又はその構成要素を示す機能ブロック図。 図9のコンピュータ装置のデータ格納部を示す機能ブロック図。 例示的なクライアントコンピュータ装置(クライアント装置)、並びに、データ構造及び/又はその構成要素を示す機能ブロック図。 図11及び図13のコンピュータ装置のデータ格納部を示す機能ブロック図。 例示的なモバイルクライアント装置、並びに、データ構造及び/又はその構成要素を示す機能ブロック図。
以下、本技術の様々な例の理解を助けるため、具体的に詳細を説明する。当業者であれば、このように多くの詳細がなくても、本技術を実施できることを理解するであろう。本技術の例の説明を不必要に不明瞭にすることを避けるために、詳細に又は全く、構造及び機能を示していなかったり、説明していない例示もある。以下に示す説明で使用する用語は、本技術の特定の例の詳細説明と組み合わせて用いている場合であっても、最も広く合理的な方法で解釈されることを意図している。以下において、特定の語が強調されるとしても、用語が制限的に解釈されることを意図する場合は、「詳細な説明(発明を実施するための形態)」中で定義されるように、明白かつ明確に定義される。
明細書及び特許請求の範囲中の「含む」及び「含んでいる」等の語は、文脈で明らかに求められていない限り、排他的又は余地のない意味とは逆に、包括的な意味で、すなわち、「含んでいるがこれらに限定されない」という意味で解釈されるべきである。ここで用いられるように、「接続された」、「結合された」又はそれの変形語は、二つ以上の要素間の直接的又は間接的な連結又は結合を意味する。要素間の接続部の結合は、物理的、論理的、又はそれらの組合せであってもよい。また、「ここで」、「上で」、「下で」及び類似の趣旨の語が、本出願で用いられた場合、本出願の特定部分ではなく、全体を参照するものとする。文脈が許す場合は、複数形で使う語が単数形も含むことができ、また、単数形で使う語が複数形を含むこともできる。2つ以上の要素に関する「又は」の語は、以下の語の解釈、すなわち、要素のいずれか、要素の全て、及び一以上の要素の任意の組合せ、の全てを含む。
特定の複数の要素が、別々の図において、大文字の同じ文字列で表されているが、番号は異なっている。ここで、番号が付されない大文字の文字列が参照される場合、どの文字列も概して同じものであり、大文字の同じ文字列のいずれかの要素に言及していると理解されるべきである。ただし、それら要素が別々の実施形態で現れる場合、これらの文字列は、潜在的に、コンピュータ装置に基づいた差異を有する。
図1は、本件で示す実施形態に係るコンピュータ装置の例を示すネットワーク及び装置の図である。図1において、クライアント装置1100は、インターネットのようなネットワーク150に接続されている。ネットワーク150は、コンピュータ、コンピュータ間のネットワーク接続部、及びネットワーク接続部を介してコンピュータ間での通信を可能にするソフトウェアルーチンを含む。
また、図1に示されているモバイルクライアント装置1300は、ネットワーク150及びクライアント装置1100に接続されている。ここで、クライアント装置1100及びモバイルクライアント装置1330は、どちらも、番号のない「クライアント装置」と言及される。また、ここででは、これら二つの装置は、図1において個別の装置として示されているが、どちらも、同等のコンピュータ装置を表す可能性があると理解されるべきである。図1は、ユーザが、「フォトグラフ」1205のような写真を撮るために、モバイルクライアント装置1330を使えること、及び、そのユーザが、クライアント装置1100及びモバイルクライアント装置1300との間の直接接続により、及び/又は、ネットワーク150を介して、「フォトグラフ」1205をクライアント装置1100へ送信できることを示すための図である。モバイルクライアント装置1300(及びクライアント装置1100)は、「フォトグラフ」1205を、GSサーバ900及び/又は外部サーバ140(後述する)へも送信することができる。
図1は、ネットワーク150に接続中のGSサーバ900を示している。図9及び図10は、データ格納部1000を含むGSサーバ900を示している。同様に、図11は、データ格納部1200を含むクライアント装置を示している。ここでは、構成要素を、一方では、GSサーバ900又はクライアント装置に接続するものとして、他方では、データ格納部1000又はデータ格納部1200に接続するものとして、述べる。二つの構成要素又は二つの構成要素の一方を介して、このような接続が行われる可能性があると理解されるべきである(例えば、コンピュータ装置がGSサーバ900に接続する又はデータを送るという記述は、そのコンピュータ装置がGSサーバ900及び/又はデータ格納部1000に接続する又はデータを送ることをいうと、理解されるべきである)。ここでは、「データベース」と言う場合は、「データ格納部」と同等であると理解されるべきである。また、図9及び図11では、一つの物理的ユニットに統合された構成要素を示しているが、サーバ及びデータベースは、共通の(又は個別の)物理的ハードウェア、及び共通の(又は個別の)論理的プロセッサ及びメモリ要素によって提供されていてもよい。GSサーバ900及びデータベース1000は、図示されているような個別の装置ではなく、クライアント装置又はクライアント装置内部の構成要素にしてもよい。
ここでは、GSサーバ900及びクライアント装置が、同等のコンピュータ装置であることも理解されるべきである。GSサーバ900はクライアント装置と分離した装置として示されているが、これは、ここで述べるシステム及び方法が、クライアント・サーバ・アーキテクチャで実行できることを示している。クライアント・サーバ・アーキテクチャでは、クライアント装置又は外部サーバ140が、「フォトグラフ」をGSサーバ900へ送信し、GSサーバは、グループを作成し、その「フォトグループ」1010となる「フォトグラフ」を選択する。その後、「フォトグループ」は、クライアント装置又は外部サーバ140へ送信され、及び/又は、クライアント装置又は外部サーバ140により(例えば、「フォトグループ」1210として)表示される。
図1は、ネットワーク150に接続された外部サーバ140も示す。外部サーバ140は、例えば、オンラインサービスであり、グーグル社のPICASA(登録商標)、フェースブック社のFACEBOOK(登録商標)などのように、写真を格納して整理するサービスや、顔の分析を行って、その分析結果を顔データ1055として、例えばGSサーバ900へ送信するサービス等である。ここでは、このようなサービスを、「オンラインサービス」という。「フォトグラフ」1005は、クライアント装置及び/又は外部サーバ140により、GSサーバ900へ送信することができる。GSサーバ900への「フォトグラフ」1005の送信は、GSサーバ900が外部サーバ140に接続し、GSサーバ900の真正証明及び承認用の資格情報を示した後、「フォトグラフ」1005をダウンロードし、続いて、外部サーバ140又はクライアント装置が、GSサーバ900に「フォトグラフ」が利用可能であることを知らせる、という手順を踏んでもよい。クライアント装置によるGSサーバ900への「フォトグラフ」の送信は、後述する。「フォトグラフ」、「フォトグループ」、及び「フォトメタデータ」は、GSサーバ900及びクライアント装置間で送信されるものとして述べる。外部サーバ140はクライアント装置と同等の役割をすること、及び、GSサーバ900は、クライアント装置との通信の代わりに又はクライアント装置との通信に加えて外部サーバ140と通信してもよいことが、理解されるべきである。
図1のコンピュータ装置は、図9及び図11(並びに図10及び図12)において、フォトアプリケーション1140及びグルーパーセレクタ200のような、ルーチンやアプリケーションのデータ群を含むものとして示されている。ウェブサーバやウェブブラウザのようなルーチンの追加的なデータ群も、これらの装置に格納され実行されてもよい。図1のコンピュータ装置は、図9及び図11(並びに図10及び図12)において、「フォトグラフ」(1005及び1205)、「フォトグループ」(1010及び1210)、及び「フォトメタデータ」(1015及び1300)(これらは、全ての要素を網羅的に列挙したものではない)のような、ルーチンにより使用されるデータ群を含むものとして示されている。ルーチンにより使用されるデータ群は、列内のセルや、デジタル文書又はファイルにおいて定義された構造中の他の値から分離された値により表すことができる。ここで、個々のレコード又はエントリと称されていても、そのレコードは、一以上のデータベースエントリを含んでもよい。データベースエントリは、復元、エンコード番号、数値演算子、バイナリ値、論理値、文字、文字列演算子、結合、条件付き論理、テスト等であってもよい。ブラウザルーチンは、例えば、ウェブサーバルーチンを介して(ウェブサーバルーチンは、ウェブページ形式で、データ及び情報を供給することができる)、GSサーバ900と通信するためのインターフェースを提供することができる。ブラウザ及びウェブサーバは、ユーザインターフェース示し、一般的にユーザインターフェースがルーチンを実行できることを示すように作られている。ブラウザ及びウェブサーバは、クライアント装置のユーザインターフェースへ情報を供給又は表示する同等のルーチンで置き換えられてもよい。ログイン資格情報及びユーザプロフィールのローカルインスタンスは、クライアント装置、GSサーバ900及び外部サーバ140に格納されてもよいし、それら装置及びサーバからアクセスしやすいようしてもよい。
他の実施例においては、いずれかのコンピュータが、データ群の一部を有していなくてもよい。例えば、モバイルクライアント装置1300が、(より一般的な汎用コンピュータ装置の代わりに)比較的限定された用途のデジタルカメラである場合、モバイルクライアント装置1300は、例えば、「フォトグループ」のようなデータ群を有していなくてもよい。さらに/あるいは、モバイルクライアント装置1300のフォトアプリケーションは、(モバイルではない)クライアント装置1100に実装されているフォトアプリケーションの全ての機能を持っていなくてもよい。
グルーパーセレクタ(200)は、類似性によって「フォトグラフ」を「フォトグループ」にグループ化し、「フォトグループ」の中で最良の写真を識別するための基準に合う「フォトグラフ」を選択するソフトウェアルーチンである。なお、グルーパーセレクタは、図2及び図3(並びにこれらの図の詳細を示す後続の図)と関連して、更に述べる。
フォトアプリケーションは、「フォトグラフ」のような写真をインポート、保存及び整理するためのアプリケーションであってもよい。フォトアプリケーションの例としては、アップル社のIPHOTO(登録商標)及びグーグル社のPICASA(登録商標)が挙げられる。
「フォトグラフ」は、デジタル処理で符号化された写真であり、例えば、「raw」画像ファイル、TIFF、JPEG、GIF、BMP、PNG、RGBE、IFF-RGFX、CGM、Gerber Format、SVG、及び他のデジタル画像形式といった、デジタル形式で符号化された写真を含むデータベースエントリを含んでもよい。「フォトグラフ」は、データベースにおいて「フォトグループ」と関連づけられていてもよいし、メタデータを含んでいたり、メタデータと関連付けられていてもよい。
メタデータは、カメラ設定、日時(ここでは、図10及び図12において時刻1025及び1400として表されている「タイムスタンプ」のことをいう)、シャッタースピード(シャッタースピード0及び1230)、露光(例えばfストップなど)、画像サイズ(画素数、距離単位又はデータ量)、画像方向(例えば縦方向又は横方向など)、倍率、焦点距離(焦点距離1020及び1220)、圧縮、カメラ名、カメラタイプ、写真に関連付けられた見出し又は他の文字列、及び場所(緯度及び経度並びにジオタギング手順で使用される他の情報など)を含むデータベースエントリを含んでもよい。メタデータは、例えば、国際新聞電気通信評議会(「IPTC」)情報交換モデル、XMPのためIPTICコアスキーマ、XMLを利用した拡張可能なメタデータプラットフォーム(「XMP」)、交換可能な画像ファイルフォーマット(「Exif」)ダブリンコアメタデータイニシアチブ、又は、ピクチャーライセンシングユニバーサルシステムなどの基準に従って形成されてもよい。例えば時間やシャッタースピードのような特定のメタデータエントリは、図10及び図12ではメタデータとは別に示されているが、メタデータの一部であってもよいし、メタデータ内にあってもよい。
図10及び図12で示す「フォトグループ」は、グルーパーセレクタにより指定された「フォトグラフ」のグループを表すデータベースエントリである。「フォトグループ」のデータベースエントリは、「フォトグループ」内にどの「フォトグラフ」があるか、「フォトグループ」内における「フォトグラフ」の順序、「フォトグループ」に付与された名前(「フォトグループ」内の「フォトグラフ」の一つ以上の主調色、タイムスタンプ又は「フォトグラフ」に関連付けられたタイムスタンプの範囲などが考えられる)、及び、グルーパーセレクタにより判定されるように、「フォトグループ」内の「フォトグラフ」が選択基準に合っているかどうか、を記録していてもよい。「フォトグループ」は、例えばフォトアプリケーションにより、更に整理され、「アルバム」又は「フォルダ」として示されたり表示されたりしてもよい。
ソフトウェアルーチン及びそのソフトウェアルーチンで使用されるデータ群は、例えば、アプリケーションの仮想化によって、いずれかのコンピュータに格納され、及び/又は遠隔で実行されてもよい。
図1に示すコンピュータは、図9,10,11及び12に関連して更に述べる。
図2は、プログラムにより、類似性によって「フォトグラフ」をグループ化し、各グループの中で、最良の写真を識別するための基準に合う「フォトグラフ」を識別するプロセスの概要を示している。
ステップ205では、グルーパーセレクタルーチンを開始するか、実行を継続する。ステップ210では、グルーパーセレクタが、「フォトグラフ」1005のような「フォトグラフ」を受信する。ステップ300では、グルーパーセレクタが、類似性及び主調色によって、グループ内の「フォトグラフ」を、「フォトグループ」のようなグループにグループ化する。この処理を行うプロセスの一例を、図3及び図3で参照される後続の図に更に示す。
ステップ400では、グルーパーセレクタは、選択基準に従って、「フォトグループ」内で最良の「フォトグラフ」を識別する。この処理を行うプロセスの一例を、図4及び図4で参照される後続の図に更に示す。ステップ230では、グルーパーセレクタは、各「フォトグループ」内で基準に合わない「フォトグラフ」を隠す。
ステップ235において、「フォトグループ」を出力する。「フォトグループ」の出力は、「フォトグループ」をクライアント装置及び/又は外部サーバへ送信することを含む。これら受信装置側では、例えばフォトアプリケーションを用いて、「フォトグループ」を表示することができる。「フォトグループ」の出力は、「フォトグループ」及び/又はメタデータのようなデータレコードとともに、「フォトグラフ」を受信装置へ送信するものであってもよい。上記データレコードは、「フォトグループ」に属している「フォトグラフ」を識別し、更に/又は、(「フォトグループ」内、あるいはフォトアプリケーションで用いられるフォルダ又はアルバム内において)どの「フォトグラフ」が隠されるべきかを識別するものである。受信装置がすでに「フォトグラフ」を持っている場合、GSサーバ900は、上述したデータレコードだけを受信装置へ送信してもよい。
図3は、図2の類似グループを判定するプロセスの詳細を示すフローチャートである。ステップ305から365は、各「フォトグラフ」に対して実行されるプロセスである。ステップ310では、「フォトグラフ」が、例えばデータベース1000(又は1200)に、すでにある「フォトグラフ」の完全な複製であるか否か判定する。「フォトグラフ」が既存の「フォトグラフ」の完全な複製であるか否かの判定は、例えば、「フォトグラフ」の又は「フォトグラフ」中におけるハッシュ又は署名又はデータ群が、既存の「フォトグラフ」そのもの又は「フォトグラフ」中のハッシュ又は署名又はデータ群と同一か否かに基づいて行う。完全な複製の消去は、ユーザに消去を確認する問合せの実行を含んでいてもよい。
ステップ600では、事前のEarth Mover’s Distance(「EMD」)処理又は事前の距離関数処理を、各「フォトグラフ」に対して実行してもよい。この処理の例は、図6において更に示す。一般に、EMD又は他の距離関数(後で述べる)は、各「フォトグラフ」間の距離を判定するために、二つ以上の「フォトグラフ」の比較を含む。EMD関数又は他の距離関数は、第1の「フォトグラフ」の態様に対して、比較対象の他の「フォトグラフ」とは別個に、演算実行されてもよい。ステップ600では、この事前のEMD関数(又は事前の他の距離関数)のプロセスを行う。この事前のEMDのプロセスの結果は、後に再演算しなくてもよいように、記憶されてもよい。
事前EMD処理の例として図6を参照する。ステップ610では、グルーパーセレクタが、「フォトグラフ」の一部分(例えば正方形。「フォトグラフ」の中心の正方形であってもよい)を取得する(「フォトグラフ」の上記一部分は、正方形である必要はなく、また、このような正方形や他の形状の部分は、「フォトグラフ」の中心に位置している必要もない)。図8に一部分の例を示す。長方形の「フォトグラフ」801は、正方形805を含む。この一部分は、更に、小部分に分割されてもよい。図8に示すように、正方形805は、4分の1の小正方形810,815,820,825に分割される(この小部分は、正方形である必要はなく、また、分割する全体部分よりも小さい部分から成ればよい)。小正方形830のような追加の副部分も含まれる(図8では、正方形805の中心に配置され、他の四つの小正方形と同じ大きさになっている)。ステップ615では、これらの部分の色のヒストグラムを判定する。図8では一例を示しているが、図8に示す部分の数や面積が必須でないことは認識されるであろう。全体として必要とされるのは、いくつか又は全ての「フォトグラフ」において上記部分が一致しているという条件で、それらの「フォトグラフ」のヒストグラムが作成されることである。上記部分が一致しているかどうかの識別は、図示されるように、「フォトグラフ」の絶対的な幾何学的条件に対して行われてもよい。あるいは、特定の顔(「フォトグラフ」から「フォトグラフ」へ移動する可能性がある)等の、「フォトグラフ」内の関心領域の部分に対して行われてもよい。
ステップ320では、EMD関数又は他の距離関数が、時間範囲X(時間範囲Xは、例えば、5分から15分にしてもよい)内の他のそれぞれの「フォトグラフ」に対して実行される。時間範囲Xが各「フォトグラフ」に関連付けられていてもよいし、あるいは、「フォトグラフ」をタイムスタンプで集合化し、EMD関数又は他の距離関数を、各集団内の全「フォトグラフ」にわたって実行してもよい。時間範囲Xに関連付ける代わりに、EMD関数又は他の距離関数は、例えば、フォトアプリケーションにおける一つのフォルダやアルバム内の「フォトグラフ」のような、他の方法でグループ化された「フォトグラフ」に対して実行されてもよい。
EMD関数又は距離関数は、ステップ600で作成されたヒストグラム、又は、他の事前EMDプロセスの結果に対して実行される。EMD関数は、ある領域上の二つの確率分布間の「距離」を測定する距離関数の一例である。EMD関数は、ワッサースタイン計量の一種である。言い換えると、EMD関数又は他の距離関数は、第1項目を第2項目に変換するための最小限の「コスト」を判定する。ステップ600で作成されたヒストグラムは、画素と周波数のグラフとして「フォトグラフ」を表す(モノクロヒストグラムのような、画素と強度を表す他のヒストグラムを用いてもよい)。それゆえ、二つの「フォトグラフ」のヒストグラムを比較して、二つのヒストグラム間の距離が大きいか小さいかを判定することができる。距離が小さい場合は、多少の違いがあったとしても、それら「フォトグラフ」は、同じ被写体のものである可能性が非常に高い。同じ被写体の二つのフォグラフ間の差異は、例えば、異なる解像度、ディザリング、ぼかし、局所的な変形、又は対象に対するフレームのずれに由来することがある。図6(及び図8)に示す例では、ステップ600において、各「フォトグラフ」の五つの異なる正方形の五つの色ヒストグラムが作成された。ステップ320のEMD関数又は他の距離関数は、二つの「フォトグラフ」から作成された上記五つの色ヒストグラムのそれぞれに対して実行する。そして、(二つの「フォトグラフ」の)上記五つのそれぞれの色ヒストグラムに対するEDM関数の結果が、例えば平均される。時間範囲X内の他のそれぞれの「フォトグラフ」に関するEMD関数又は他の距離関数の値は、例えばEMD値(5及び1235)として、保存してもよい。
ステップ325では、EMD関数又は他の距離関数の値が閾値Tよりも大きいか小さいかを判定する。この閾値は、例えば、用いた距離関数の種類、用いたヒストグラムの種類、用いたユニット、(「フォトグラフ」間で類似性を検出する際の)誤検出率の許容値等に依存する。ここに示した例では、「50」とした閾値が有効であることが見出されている。また、例えば、「フォトグラフ」のグループに対しては、「フォトグラフ」が一致しているかどうか、ほぼ完全な複製かどうか、及びテーマ(例えば、冬の雪景色、草原の上の青空等)が類似しているかどうかによって「フォトグラフ」を分類するために、複数の閾値を用いてもよい。
ステップ325において、ある「フォトグラフ」と時間範囲X内の他の「フォトグラフ」群との間のEMD関数又は他の距離関数の値が、閾値Tよりも小さい(「フォトグラフ」が類似することを意味する)と判定した場合は、次に、ステップ330において、他の類似する「フォトグラフ」群が、同一の類似グループに属するか、異なる二以上の類似グループに属するかについて判定する。ステップ330における判定が肯定である場合は、ステップ335において、「フォトグループ」1010のような特定されたグループに、「フォトグラフ」を追加する。ステップ330における判定が否定である場合は、ステップ340において、「フォトグループ」1010のような新しいグループを、その「フォトグラフ」のために作成する。また、ステップ325において、その「フォトグラフ」と他の「フォトグラフ」との間のEMD関数又は他の距離関数の値が、閾値Tよりも大きい(「フォトグラフ」が類似しないことを意味する)と判定した場合は、次に、ステップ345において、「フォトグループ」1010のような新しいグループを、その「フォトグラフ」のために作成する。このような類似グループを保存した後、EMD値113を破棄してもよいし、後に利用するために保存してもよい。
ステップ700において、各「フォトグラフ」における主調色を判定する。図7は、「フォトグラフ」における主調色を判定するプロセスの一例を示す。図7に移って、ステップ705では、各「フォトグラフ」の色ヒストグラムを取得する。これら色ヒストグラムは、「フォトグラフ」の一部分のヒストグラムであってもよいし、全体のヒストグラムであってもよい。また、例えば、ステップ600で作成された色ヒストグラムでもよい。ステップ710では、色の最大総数が取得され得る。色の最大総数は、静的変数でもよいし、グルーパーセレクタのような機能を実行するソフトウェアルーチンに固定の数でもよい。この例では、色の最大総数を10としてもよい。ステップ715では、その「フォトグラフ」に対して、RGB色の立方形に関するロイドアルゴリズムを実行し、ボロノイ図を生成する。ボロノイ図は、ある空間を多数の領域に分割する方法である。この例のロイドアルゴリズムは、ステップ705の色ヒストグラム及びステップ710の色の最大総数を、入力値として用いている。この例のロイドアルゴリズムは、ステップ705の色ヒストグラムから導かれる画素周波数である入力点を、ステップ710の色の最大総数であるk個の初期セットに分割する。そして、このアルゴリズムは、例えばユークリッド空間における平均次元によって、各セットの平均点又は重心を算出する。この場合、各重心の初期位置は、ランダムな位置から開始する。このアルゴリズムは、例えばユークリッド距離関数を用いたりして、各点を最も近い重心に関連付けて、新しい領域を構築する。その後、重心は新しい集団に対して再計算される。このアルゴリズムは、各点が集団を移動しなくなるまで、又は、重心が変化しなくなるまで、所定数の反復処理が実行され収束するまでは繰り返し実行される。このステップの結果は、順序付け、重み付け、リスト化がなされる。各重みは、各集団に関する画素数により決定される。
ステップ720では、ステップ715の結果から、主調色、例えば、最上位の一色、又は最上位から三色を選択する。ステップ725では、ステップ720で選択された上位の色を、色名に関連付けることができる。図3に戻って、ステップ360では、ステップ700の結果(例えば、ステップ725の結果)を、例えば主調色1040として保存する。
ステップ370では、ステップ360で保存された主調色を、全ての「フォトグラフ」について取得する。ステップ375では、「フォトグラフ」を、主調色によりグループ化することができる。主調色によるグループ化は、類似性によるグループ化とは別個に実行してもよい。ステップ380では、色のグループは、例えば「フォトグループ」1010の一部として(又は別のグループ化で)、保存する。
上述したように、図4は、図2に示すプロセスの詳細を示すフローチャートであり、このプロセスでは、各グループの中で最良の写真が選択されるとともに、選択されなかった写真が隠される。図4に示すプロセスは、例えばグルーパーセレクタルーチンにより実行されてもよい。図4において、ステップ405から455までは、個々の「フォトグラフ」に対して実行される。
ステップ410では、ぼかし信頼度「BC」、及び/又は、ぼかし量「BE」を、例えば「フォトグラフ」の白黒版で判定してもよい。一般的に、BCは、「フォトグラフ」が全体的にぼやけているかどうかを評価する割合である。一方、BEは、「フォトグラフ」がぼやけているとしたら、どのくらいぼやけているかを評価する割合である(BEは、「フォトグラフ」のエッジ点を見て、くっきりしたエッジに対するぼやけたエッジの割合を判定する)。BC及びBEを導き出す方法は数多くある。例えば、これらの論文に関連する情報開示陳述書に投稿された「Blur Detection for Digital Images Using Wavelet Transform」に示されている。この例の概要は以下のようである。例えば、「フォトグラフ」の白黒版のような画像から算出した画素の明るさのスカラー量について、ハールウェーブレット変換を三回繰り返して実行し、三つの異なる基準で高エネルギの画素を検索して、それらに値を割り当てる。割り当てられた値を使って、画素をエッジ点又は非エッジ点に分類する。次に、テストの2番目のセットで、エッジ点を、ぼやけたエッジ部分又はくっきりしたエッジ部分に分類する。様々な分類の比率より、結果値が決定される。BC値及び/又はBE値は、例えば、データ格納部1000にBC−BE1045として格納される。
ステップ415では、例えば、焦点距離、時刻及びシャッタースピードのような調整係数値を、例えば「フォトメタデータ」(図では、焦点距離、シャッタースピード、及び時刻として示されている)から取得する。調整係数は、「フォトグラフ」のぼかしに影響する可能性があるとともに、「フォトグラフ」のぼかしに対する人間の許容値に影響又は関連する可能性がある。ステップ420では、調整係数を用いて、BC値及び/又はBE値に重み付けしてもよい。例えば、近焦点距離で撮られた「フォトグラフ」は、花のマクロ写真の場合、「フォトグラフ」の大部分はぼやけているかもしれないが、小さな部分、例えば花の雄しべの部分には焦点が合っているかもしれない。この「フォトグラフ」は、審美的には大変満足のいくものかもしれない。近距離焦点は、例えば、1より小さい値、つまり、近距離焦点とBC値及び/又はBE値を乗算すると数値が減少するような値に変換されてもよい(あるいは、焦点距離に応じてぼかしの許容値を大きく補正するように、調整係数を設定してもよい)。同様に、夜に撮影された「フォトグラフ」は、絞りが広い及び/又はシャッタースピードが遅いために、比較的ぼやけている可能性がある。そして、夜に撮影された「フォトグラフ」は、比較的ぼやけているにもかかわらず、興味深い又は価値ある情報を含んでいる可能性があるため、夜の時間の「フォトグラフ」のぼかしの許容値は比較的大きくなる。その結果、日没後及び日の出前の時刻については、例えば、1より小さい値、つまり、時刻とBC値及び又はBE値を乗算すると数値が減少するような値に変換されてもよい(あるいは、「フォトグラフ」が撮影された時刻に応じて、ぼかしの許容値を大きく補正するように、調整係数を設定してもよい)。時刻の調整係数は、「フォトグラフ」が撮影された場所の日の長さを考慮にいれてもよい。
ステップ425では、調整されたBC値及び/又はBE値が、閾値よりも大きいか又は小さいかについて判定される。BC値及び又はBE値が閾値よりも大きい場合は、次にステップ430において、「フォトグラフ」が隠される。「フォトメタデータ」又は「フォトグループ」に、所定の値をセットして、「フォトグラフ」を隠してもよい。この値は、例えば、フォトアプリケーションによって認識される値であり、この値がフォトアプリケーションにより認識されることで、ユーザインターフェース内のアルバム又はフォルダに「フォトグラフ」が示されなくなったり、「フォトグループ」が表示された場合に「フォトグループ」の一部として「フォトグラフ」が示されなくなる。「フォトグラフ」が隠された場合も、例えば、全「フォトグラフ」一覧のような他の「フォトグラフ」一覧においては、その「フォトグラフ」を可視的に表示してもよい。ステップ425において、BC値及び又はBE値が閾値よりも大きくない場合は、「フォトグラフ」は隠されない。
ステップ500では、rO及びrUが判定される。一般的に、rOは、「フォトグラフ」が露出過度か否かを表す係数であり、rUは、「フォトグラフ」が露出不足か否かを表す係数である。rO及びrUを判定するプロセスの一例を図5に示す。次に図5のステップ510において、「フォトグラフ」における画素の総数を取得する。ステップ515において、閾値T2よりも大きな輝度値を持つ白黒画素数を取得する。T2としては、画素の最大輝度値近傍の値が選択される。ステップ520において、ステップ515で取得した数を、ステップ510で取得した数で割ってrOを生成する。ステップ525では、閾値T3よりも小さい輝度値を持つ白黒画素数を取得する。T3としては、画素の最小輝度値近傍の値が選択される。ステップ530では、ステップ535で取得した数をステッ510で取得した数で割ってrUを生成する。
図4に戻って、ステップ440では、時刻115のような、「フォトグラフ」が撮影された時刻が取得される。「フォトグラフ」が撮影された時刻は、rO及びrUに関して使われる調整係数であってもよい。BE及びBCに関して用いた調整係数と同様に、人間は、夜に撮影された「フォトグラフ」の露出不足、及び昼間に撮影された「フォトグラフ」の露出過度に対しては、比較的許容できるかもしれない。ステップ445で、時刻−(「フォトグラフ」が撮影された場所がわかっているなら)その場所の緯度での日射量で補正されているだろう−は、rO値及び又はrU値と乗算すると、rO値及び/又はrU値が増加又は減少するような値に変換されてもよい。ステップ445では、rO値及び/又はrU値を、例えばすぐ上で述べたような調整係数により、調整してもよい。
ステップ450では、「フォトグラフ」について、顔の分析が実行される。顔の分析により、「フォトグラフ」上で顔が検知されたか否か、開いた又は閉じた目が検知されたか否か、顔がカメラの方を向いているか否か、「フォトグラフ」上で眼鏡、顔ひげ、及び笑顔が検知されたか否かを示す値を返してもよい。顔の分析結果は、例えば、データ格納部1000に、顔データ1055として格納してもよい。
ステップ460からステップ490は、分離された類似グループ、例えば「フォトグループ」(「フォトグループ」内の「フォトグラフ」は、グルーパーセレクタにより、類似対象の「フォトグラフ」と判定されている)内の全「フォトグラフ」に対して、グルーパーセレクタによって、実行される。ステップ465において、グルーパーセレクタは、最良のBE値及び/又はBC値を持つ「フォトグラフ」(この例では、最も低いBE値及び/又はBC値を持つ「フォトグラフ」)を選択する。ステップ470では、グルーパーセレクタは、最良のrO値及び/又はrU値を持つ「フォトグラフ」を選択する。
ステップ475では、顔データ1055に基づいて、判定中の「フォトグループ」内の「フォトグラフ」中に顔があるかないかについて判定する。判定中の「フォトグループ」内の「フォトグラフ」中に顔がある場合には、次にステップ480において、グルーパーセレクタは、開いた目、笑顔及び/又は比較的まっすぐにカメラに顔を向けている被写体の「フォトグラフ」を選択してもよい(一以上の「フォトグラフ」を選択してもよい)。
ステップ485では、グルーパーセレクタは、選択しなかった「フォトグラフ」を隠す。ステップ430と同様に、「フォトメタデータ」又は「フォトグループ」に、所定の値をセットすることで、「フォトグラフ」を隠してもよい。この値は、例えば、フォトアプリケーションによって認識される値であり、この値がフォトアプリケーションにより認識されることで、ユーザインターフェース内のアルバム又はフォルダに「フォトグラフ」が示されなくなったり、「フォトグループ」が表示された場合に「フォトグループ」の一部として「フォトグラフ」が示されなくなったりする。「フォトグラフ」が隠された場合も、例えば、全「フォトグラフ」一覧のような他の「フォトグラフ」一覧において、その「フォトグラフ」を可視的に表示してもよい。
図9は、例示的なサーバコンピュータ装置(GSサーバ)、並びに、データ構造及び/又はその構成要素を示す機能ブロック図である。コンピュータ装置900が、図9に示すよりも多くの構成要素を含む実施形態であってもよい。しかしながら、これら一般に公知の構成要素の全てが、一例の実施形態を開示するために必要なわけではない。図9に示すように、コンピュータ装置900は、ネットワーク150に接続するためのネットワークインターフェース905を含んでいる。
コンピュータ装置900は、少なくとも一つの処理ユニット945、記憶装置925、及び任意の表示装置910も含んでいる。これらは、バス920を経由してネットワークインターフェース905に相互に接続される。記憶装置925は、一般的に、random access memory(「RAM」)、read only memory(「ROM」)、ディスクドライブやSDRAM(synchronous dynamic random-access memory)のような永久大容量記憶装置を含む。記憶装置925は、例えば、グルーパーセレクタルーチン200、ウェブサーバ、ブラウザ、並びに、emailサーバ、クライアントアプリケーション、及びデータベースアプリケーションのようなソフトウェアルーチンのプログラムコードを格納している。加えて、記憶装置925は、オペレーティングシステム930も格納している。これらのソフトウェアの構成要素は、非一時的なコンピュータ読み取り可能記憶媒体940に関連するドライブ装置(図示なし)を用いて、非一時的なコンピュータ読み取り可能記憶媒体940からコンピュータ装置900の記憶装置925へ読み込まれる。この非一時的なコンピュータ読み取り可能記憶媒体940は、フロッピーディスク、テープ、DVD/CD−ROMドライブ、メモリカード、又は他の記憶媒体等である。ソフトウェアの構成要素が、ドライブ装置及びコンピュータ読み取り可能記憶媒体940以外の装置(例えば、コンピュータインターフェース905を介して)によって、あるいは、それら装置の代わりに読み込まれてよい。
コンピュータ装置900は、任意の入力方法を支援するハードウェアである、任意の入力装置915(例えば、タッチスクリーン、キーボード、マウス、トラックボール、スタイラス・ペン、マイク及びカメラ等)も含んでいてもよい。
コンピュータ装置900は、図10に示すデータ格納部1000も含んでいる。あるいは、バス920を経由してデータ格納部1000と通信する。バス920が、storage area network(「SAN」)、高速シリアルバス、及び/又は他の適した通信技術の使用を含む実施形態も考えられる。コンピュータ装置900が、ネットワークインターフェース905を経由してデータ格納部900と通信する実施形態も考えられる。
図10は、図9のコンピュータ装置のデータ格納部を示す機能ブロック図である。この図は、上述した、ルーチンで使われるデータグループを示している。
図11は、例示的なクライアントコンピュータ装置(クライアント装置)、並びに、データ構造及び/又はその構成要素を示す機能ブロック図である。図11の構成要素は、概ね、図9において類似する名前が付けられた構成要素と同じものである(上記における9を11に入れ替える)。加えて、図11に示すクライアント装置は、フォトアプリケーション1140(この「フォトアプリケーション」ルーチンは、上述している)を含む。
図12は、図11及び図13のコンピュータ装置のデータ格納部を示す機能ブロック図である。この図は、上述した、ルーチンで使われるデータグループを示している。
図13は、例示的なモバイルクライアント装置、並びに、データ構造及び/又はその構成要素を示す機能ブロック図である。図13の構成要素は、図9及び図11において類似する名前が付けられた構成要素と同じものである(上記における9及び11を、13に入れ替える)。加えて、図13に示すモバイルクライアント装置は、カメラ1350を含む。GSサーバは、任意の入力装置915備えており、任意の入力装置915にカメラが含まれていてもよい。これに対して、モバイルクライアント装置1300は、カメラ1350を備えており、これに加えて入力装置1315を備えている。
上記実施形態の詳細な説明は、制限的であることを意図せず、又は上記形態の開示だけに限定することを意図するものではない。特定の実施形態及び実施例は、例示の目的で述べられており、当業者は、本システムの範囲で様々な同等の変形が可能であることを認識するであろう。例えば、プロセス又はブロックは一定の順番で表されているが、異なる順番でルーチンの命令を実行したり、異なる順番のブロックを有するシステムを採用してもよい。また、プロセス又はブロックのいくつかは、消去、移動、追加、再分割、結合、及び/又は修正されてもよい。プロセス又はブロックは、折にふれて、続けて実行するように示されているが、これらのプロセス又はブロックを並行的に実行してもよいし、あるいは異なるタイミングで実行してもよい。さらに、ここで述べた特定の数値は、単なる例示であり、他の実施では、異なる値や範囲を使用してもよい。
900…GSサーバ、1100…クライアント装置、925,1125…記憶装置。

Claims (14)

  1. 記憶装置を備えたコンピュータにおいて、類似する写真をグループ化し且つ各グループの中で最良の写真を選択する方法であって、
    前記コンピュータの前記記憶装置の中の二つ以上の写真に対して、
    前記二つ以上の写真のうちの少なくとも二つが類似していることを判定するステップと、
    類似していると判定された写真の各セット内において、前記セットのどの前記写真が一連の基準に合うかを識別するステップと、
    各セット内の前記基準に合わない前記写真を隠すステップと、を含み、
    前記二つ以上の写真のうちの少なくとも二つが類似していることを判定するステップは、
    各前記写真の中で、最大正方形を求めるステップと、
    前記最大正方形を四つの互いに重ならない小正方形に分割するステップと、
    前記最大正方形の中心に、前記四つの小正方形の一つと同じ大きさの五番目の小正方形を設定するステップと、
    各前記写真の少なくとも一部分について、少なくとも一つのヒストグラムを取得するステップと、
    距離関数により前記写真の前記ヒストグラムを比較するステップと、
    前記距離関数の結果が閾値よりも小さい場合に、前記二つ以上の写真のうちの少なくとも二つが類似していると判定するステップと、を含み、
    前記少なくとも一つのヒストグラムを取得するステップは、前記五つの小正方形のそれぞれの個別のヒストグラムを取得するステップを含み、
    前記距離関数は、各写真の五つの小正方形に対応する部分のそれぞれに個別に適用され、
    前記距離関数の前記結果は平均され、
    前記距離関数の前記結果の平均値が前記閾値よりも小さい場合に、前記二つ以上の写真のうちの少なくとも二つが類似していると判定する方法
  2. 前記距離関数は、「earth mover’s distance function」である請求項1に記載の方法。
  3. 前記閾値は50である請求項1又は請求項2に記載の方法。
  4. 前記少なくとも一つのヒストグラムは、波長を表す第1軸と前記波長に対する前記写真の画素数を表す第2軸とを有する、請求項1に記載の方法。
  5. 前記二つ以上の写真が日時に関連付けられており、且つ、前記二つ以上の写真の前記日時の差が閾値未満の場合に、前記二つ以上の写真は、より大きな写真集合体から選択される、請求項1から請求項4のいずれか1項に記載の方法。
  6. 前記閾値は、5分から15分の間である、請求項5に記載の方法。
  7. 前記セットのどの前記写真が前記基準に合うかを識別するステップは、少なくとも一つのぼかし係数が閾値よりも小さいことを判定するステップを含み、
    前記少なくとも一つのぼかし係数は、写真が全体的にぼやけているかどうかを評価するぼかし信頼度及び写真のエッジ点を見てくっきりしたエッジに対するぼやけたエッジの割合をしめすぼかし量の少なくとも一方を含請求項1から請求項6のいずれか1項に記載の方法。
  8. 前記少なくとも一つのぼかし係数と、前記写真に関連づけられた日時、シャッタースピード及び焦点距離の少なくとも一つから得られた重み係数とを乗算するステップを、更に含む、請求項7に記載の方法。
  9. 前記セットのどの前記写真が前記基準に合うかを識別するステップは、
    各写真の全画素に対する露出過度の画素の比率であるrOと各写真の全画素に対する露出不足の画素の比率であるrUとを判定するステップと、
    前記rO及び前記rUのうちの少なくとも一方が最低値の前記写真を、前記基準に合うものとして識別するステップと、を含む、請求項1から請求項6のいずれか1項に記載の方法。
  10. 前記rO及び前記rUのうちの少なくとも一方を判定するステップは、前記比率と、前記写真に関連付けられた日時から得られた重み係数とを乗算するステップを、更に含む、請求項9に記載の方法。
  11. 前記セットのどの前記写真が前記基準に合うかを識別するステップは、
    前記写真の顔の分析結果を受信するステップと、
    前記顔の分析から、前記セットの各写真中に人間の顔が存在することを判定するステップと、
    人間の顔が、開いている目、笑顔、及びカメラの方を向いた表情のうちの少なくとも一つを有していることを、前記顔の分析が識別している場合に、前記写真を前記基準に合うものとして識別するステップ、を含む、請求項1から請求項6のいずれか1項に記載の方法。
  12. 記憶装置を備えたコンピュータにおいて、類似する写真をグループ化し且つ各グループの中で最良の写真を選択する方法であって、
    前記コンピュータの前記記憶装置の中の二つ以上の写真に対して、
    前記二つ以上の写真のうちの少なくとも二つが類似していることを判定するステップと、
    類似していると判定された写真の各セット内において、前記セットのどの前記写真が一連の基準に合うかを識別するステップと、
    各セット内の前記基準に合わない前記写真を隠すステップと、を含み、
    前記セットのどの前記写真が前記基準に合うかを識別するステップは、
    写真が全体的にぼやけているかどうかを評価するぼかし信頼度及び写真のエッジ点を見てくっきりしたエッジに対するぼやけたエッジの割合をしめすぼかし量の少なくとも一方を含む少なくとも1つのぼかし係数が閾値よりも小さいことを判定するステップと、
    前記少なくとも一つのぼかし係数と、前記写真に関連づけられた日時、シャッタースピード及び焦点距離の少なくとも一つから得られた重み係数とを乗算するステップとを含む方法。
  13. 記憶装置を備えたコンピュータにおいて、類似する写真をグループ化し且つ各グループの中で最良の写真を選択する方法であって、
    前記コンピュータの前記記憶装置の中の二つ以上の写真に対して、
    前記二つ以上の写真のうちの少なくとも二つが類似していることを判定するステップと、
    類似していると判定された写真の各セット内において、前記セットのどの前記写真が一連の基準に合うかを識別するステップと、
    各セット内の前記基準に合わない前記写真を隠すステップと、を含み、
    前記セットのどの前記写真が前記基準に合うかを識別するステップは、
    各写真の全画素に対する露出過度の画素の比率であるrOと各写真の全画素に対する露出不足の画素の比率であるrUとを判定するステップと、
    前記rO及び前記rUのうちの少なくとも一方が最低値の前記写真を、前記基準に合うものとして識別するステップと、を含み
    前記rO及び前記rUのうちの少なくとも一方を判定するステップは、前記比率と、前記写真に関連付けられた日時から得られた重み係数とを乗算するステップを、更に含む方法。
  14. 実行された場合に請求項1から請求項13のいずれか一項に係る方法を行う指令を含むコンピュータの読み取り可能な記憶媒体を備えた、コンピュータシステム。
JP2015546463A 2012-12-07 2013-10-11 最良の写真を検出及び選択する方法及びシステム Active JP6267224B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/708,836 US8837867B2 (en) 2012-12-07 2012-12-07 Method and system to detect and select best photographs
US13/708,836 2012-12-07
PCT/US2013/064690 WO2014088699A1 (en) 2012-12-07 2013-10-11 Method and system to detect and select best photographs

Publications (2)

Publication Number Publication Date
JP2016505950A JP2016505950A (ja) 2016-02-25
JP6267224B2 true JP6267224B2 (ja) 2018-01-24

Family

ID=50881023

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015546463A Active JP6267224B2 (ja) 2012-12-07 2013-10-11 最良の写真を検出及び選択する方法及びシステム

Country Status (5)

Country Link
US (2) US8837867B2 (ja)
JP (1) JP6267224B2 (ja)
DE (1) DE112013005851T5 (ja)
GB (1) GB2523013B (ja)
WO (1) WO2014088699A1 (ja)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10440432B2 (en) 2012-06-12 2019-10-08 Realnetworks, Inc. Socially annotated presentation systems and methods
US10013477B2 (en) * 2012-11-19 2018-07-03 The Penn State Research Foundation Accelerated discrete distribution clustering under wasserstein distance
US9628702B2 (en) 2014-05-21 2017-04-18 Google Technology Holdings LLC Enhanced image capture
US11449542B2 (en) 2015-02-11 2022-09-20 AVAST Software s.r.o. Systems and methods for identifying unwanted photos stored on a device
US10521472B2 (en) * 2015-02-27 2019-12-31 Realnetworks, Inc. Composing media stories method and system
US10152527B1 (en) 2015-12-28 2018-12-11 EMC IP Holding Company LLC Increment resynchronization in hash-based replication
CN105678334A (zh) * 2016-01-05 2016-06-15 广州市久邦数码科技有限公司 一种识别重复照片的方法及其实现***
US10310951B1 (en) 2016-03-22 2019-06-04 EMC IP Holding Company LLC Storage system asynchronous data replication cycle trigger with empty cycle detection
US10095428B1 (en) 2016-03-30 2018-10-09 EMC IP Holding Company LLC Live migration of a tree of replicas in a storage system
US9959063B1 (en) 2016-03-30 2018-05-01 EMC IP Holding Company LLC Parallel migration of multiple consistency groups in a storage system
US9959073B1 (en) 2016-03-30 2018-05-01 EMC IP Holding Company LLC Detection of host connectivity for data migration in a storage system
US10565058B1 (en) 2016-03-30 2020-02-18 EMC IP Holding Company LLC Adaptive hash-based data replication in a storage system
US9983937B1 (en) 2016-06-29 2018-05-29 EMC IP Holding Company LLC Smooth restart of storage clusters in a storage system
US10152232B1 (en) 2016-06-29 2018-12-11 EMC IP Holding Company LLC Low-impact application-level performance monitoring with minimal and automatically upgradable instrumentation in a storage system
US10013200B1 (en) 2016-06-29 2018-07-03 EMC IP Holding Company LLC Early compression prediction in a storage system with granular block sizes
US10083067B1 (en) 2016-06-29 2018-09-25 EMC IP Holding Company LLC Thread management in a storage system
US10048874B1 (en) 2016-06-29 2018-08-14 EMC IP Holding Company LLC Flow control with a dynamic window in a storage system with latency guarantees
US10127246B2 (en) 2016-08-16 2018-11-13 Microsoft Technology Licensing, Llc Automatic grouping based handling of similar photos
US10706512B2 (en) * 2017-03-07 2020-07-07 Adobe Inc. Preserving color in image brightness adjustment for exposure fusion
WO2019191708A1 (en) 2018-03-30 2019-10-03 Realnetworks, Inc. Socially annotated audiovisual content
EP3575986B1 (en) * 2018-05-30 2024-07-10 Robert Bosch GmbH A lossy data compressor for vehicle control systems
US11169258B2 (en) * 2019-05-09 2021-11-09 The Boeing Company Transport-based synthetic aperture radar navigation systems and methods
CN110781917B (zh) * 2019-09-18 2021-03-02 北京三快在线科技有限公司 重复图像的检测方法、装置、电子设备及可读存储介质
WO2021187776A1 (en) * 2020-03-17 2021-09-23 Samsung Electronics Co., Ltd. Methods and systems for grouping of media based on similarities between features of the media
WO2022099122A1 (en) * 2020-11-09 2022-05-12 Canon U.S.A., Inc. Apparatus and method for culling images

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3747589B2 (ja) * 1997-09-17 2006-02-22 コニカミノルタビジネステクノロジーズ株式会社 画像特徴量比較装置および画像特徴量比較プログラムを記録した記録媒体
DE69915566T2 (de) * 1998-11-25 2005-04-07 Eastman Kodak Co. Zusammenstellung und Änderung von Fotocollagen durch Bilderkennung
JP2001160057A (ja) * 1999-12-03 2001-06-12 Nippon Telegr & Teleph Corp <Ntt> 画像の階層的分類方法、および画像の分類・検索装置、およびこの方法を実行するプログラムを記録した記録媒体
US6993180B2 (en) * 2001-09-04 2006-01-31 Eastman Kodak Company Method and system for automated grouping of images
EP1302865A1 (en) * 2001-10-10 2003-04-16 Mitsubishi Electric Information Technology Centre Europe B.V. Method and apparatus for searching for and retrieving colour images
FR2845179B1 (fr) * 2002-09-27 2004-11-05 Thomson Licensing Sa Procede de regroupement d'images d'une sequence video
JP3984175B2 (ja) * 2003-01-31 2007-10-03 富士フイルム株式会社 写真画像選別装置およびプログラム
US8553949B2 (en) * 2004-01-22 2013-10-08 DigitalOptics Corporation Europe Limited Classification and organization of consumer digital images using workflow, and face detection and recognition
EP2164044B1 (en) * 2003-07-04 2012-04-18 Mitsubishi Electric Information Technology Centre Europe B.V. Method and apparatus for representing a group of images
JP2006259788A (ja) * 2005-03-15 2006-09-28 Seiko Epson Corp 画像出力装置
KR100706389B1 (ko) 2005-07-15 2007-04-10 (주)첫눈 이미지 상호간의 유사도를 고려한 이미지 검색 방법 및장치
JP2007097090A (ja) * 2005-09-30 2007-04-12 Fujifilm Corp 画像表示装置および方法ならびにプログラム、さらに写真プリント注文受付装置
US20070098303A1 (en) * 2005-10-31 2007-05-03 Eastman Kodak Company Determining a particular person from a collection
US8527469B2 (en) * 2006-10-13 2013-09-03 Sony Corporation System and method for automatic detection of duplicate digital photos
US7755646B2 (en) * 2006-10-17 2010-07-13 Hewlett-Packard Development Company, L.P. Image management through lexical representations
JP5034661B2 (ja) * 2007-05-07 2012-09-26 ソニー株式会社 画像管理装置、画像表示装置、撮像装置、および、これらにおける処理方法ならびに当該方法をコンピュータに実行させるプログラム
CN101604314A (zh) * 2008-06-10 2009-12-16 鸿富锦精密工业(深圳)有限公司 自动删除相同档案的方法
WO2010041377A1 (ja) 2008-10-06 2010-04-15 パナソニック株式会社 代表画像表示装置及び代表画像選択方法
CN101510218A (zh) 2009-03-26 2009-08-19 阿里巴巴集团控股有限公司 实现图片搜索的方法及网站服务器
JP5337563B2 (ja) * 2009-04-08 2013-11-06 日立コンピュータ機器株式会社 帳票認識方法および装置
US8839128B2 (en) * 2009-11-25 2014-09-16 Cooliris, Inc. Gallery application for content viewing
KR101108761B1 (ko) 2009-12-29 2012-02-24 엔에이치엔(주) 이미지 중복 제거시의 대표 이미지 선택 방법 및 시스템
US8774526B2 (en) * 2010-02-08 2014-07-08 Microsoft Corporation Intelligent image search results summarization and browsing
US8891902B2 (en) * 2010-02-16 2014-11-18 Imprezzeo Pty Limited Band weighted colour histograms for image retrieval
US8452106B2 (en) * 2010-03-23 2013-05-28 Microsoft Corporation Partition min-hash for partial-duplicate image determination
JP5608511B2 (ja) * 2010-10-25 2014-10-15 日立オムロンターミナルソリューションズ株式会社 画像補正装置および画像補正方法
US8503777B2 (en) * 2010-12-16 2013-08-06 Sony Corporation Geometric feature based image description and fast image retrieval
KR101145278B1 (ko) 2011-11-08 2012-05-24 (주)올라웍스 유사한 이미지들로부터 대표 이미지를 선택하는 방법, 장치 및 컴퓨터 판독 가능한 기록 매체

Also Published As

Publication number Publication date
US9135278B2 (en) 2015-09-15
DE112013005851T5 (de) 2015-08-27
GB2523013B (en) 2021-03-31
WO2014088699A1 (en) 2014-06-12
US8837867B2 (en) 2014-09-16
JP2016505950A (ja) 2016-02-25
GB201506518D0 (en) 2015-06-03
US20140363079A1 (en) 2014-12-11
GB2523013A (en) 2015-08-12
US20140161348A1 (en) 2014-06-12

Similar Documents

Publication Publication Date Title
JP6267224B2 (ja) 最良の写真を検出及び選択する方法及びシステム
CN109493350B (zh) 人像分割方法及装置
US10586108B2 (en) Photo processing method and apparatus
US7933454B2 (en) Class-based image enhancement system
US8731325B2 (en) Automatic generation of a photo guide
CN108241645B (zh) 图像处理方法及装置
US20180359416A1 (en) Extrapolating lighting conditions from a single digital image
US8194992B2 (en) System and method for automatic enhancement of seascape images
US20120294514A1 (en) Techniques to enable automated workflows for the creation of user-customized photobooks
US20130050747A1 (en) Automated photo-product specification method
US9020243B2 (en) Image adjustment
US9773193B2 (en) Image processing apparatus, image processing method, and program
US9400942B2 (en) System and method for estimating/determining the date of a photo
WO2015167975A1 (en) Rating photos for tasks based on content and adjacent signals
US20150003680A1 (en) Information processing apparatus, method for processing information, and program
US20140029854A1 (en) Metadata supersets for matching images
US9767533B2 (en) Image resolution enhancement based on data from related images
US20130050744A1 (en) Automated photo-product specification method
US20130050745A1 (en) Automated photo-product specification method
CN115115552A (zh) 图像矫正模型训练及图像矫正方法、装置和计算机设备
US10552888B1 (en) System for determining resources from image data
WO2017006648A1 (ja) 画像判別装置、画像判別方法、及びコンピュータ読み取り可能な記録媒体
Sun et al. The detecting system of image forgeries with noise features and EXIF information
Kulkarni et al. Source camera identification using GLCM
CN113628122A (zh) 图像处理方法、模型训练方法、装置及设备

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160921

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170725

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171020

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: 20171212

R150 Certificate of patent or registration of utility model

Ref document number: 6267224

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350