このように、様々な側面を持つ本発明では、コンテンツが対象とされている。ここに、コンテンツとは、広く、人間の創造的活動により生み出されるものをいう。例えば、映画、音楽、演劇、文芸、写真、漫画、アニメーション、コンピュータゲームその他の文字、図形、色彩、音声、動作若しくは映像若しくはこれらを組み合わせたものまたはこれらに係る情報を電子計算機を介して提供するためのプログラムが、コンテンツの一例である。これらのうちの主に音楽を含むコンテンツを、ここでは楽曲と称している。
ただし、本明細書では、いわゆるコンテンツデータ、即ち、人間の創造的活動により生み出されたものが装置によって処理可能な形態とされたもの、例えば電気信号とされたものや、メモリに固定されたもの等も、特に区別せずにまとめて、コンテンツと称する。即ち、ここでは、楽曲等を構成する音声データもまた、単にコンテンツと称する。
本発明は、例えば、コンテンツとして楽曲が採用された場合において、ユーザが楽曲を選曲するUI(User Interface)を提供するシステムに適用することができる。以下、かかるシステムを、楽曲検索システムと称し、本発明が適用される情報処理装置の一実施の形態であるとして説明していく。換言すると、以下において楽曲検索システムと称している場合には、特に断りのない限り、本発明が適用される情報処理装置の一実施の形態としての楽曲検索システムを意味している。即ち、従来の楽曲検索システムは除外される。
楽曲検索システムは、例えば、以下のような様々な機能を有することができる。
即ち、楽曲検索システムは、例えば、各楽曲に付されているメタデータ、具体的には例えば「テンポ」、「にぎやかさ」、「明るさ」などを検索軸(かかる検索軸については後述する)として採用し、これらのうちのN個(Nは2以上の整数値)の検索軸を基準として楽曲を分類する機能を有する。かかる機能の実現により、ユーザは、N個の検索軸(テンポ、にぎやかさ、明るさなど)を用いて、楽曲を検索することができる。
即ち、楽曲検索システムは、任意のN個の検索軸を各次元の軸としたN次元の空間(以下、検索空間と称する)を構築し、その検索空間に各楽曲をマッピングしてユーザに提示する機能を有する。検索空間の提示形態は特に限定されないが、ここでは、検索空間に楽曲がマッピングされた状態、即ち、各楽曲の分布状態を示す画像(以下、かかる画像をマップと称する)が任意の表示装置に表示されることで、その検索空間がユーザに提示されるとする。
この場合、楽曲検索システムは、マップを用いた楽曲の選択もしくは範囲指定の操作をユーザに提供する機能を有することができる。従って、ユーザは、かかる操作を利用して楽曲を選曲することができる。
ここで検索軸は、コンテンツに関連する情報に応じてコンテンツを提示する基準である。例えば、検索軸は、コンテンツに関連する情報に応じた位置(座標値)を規定する空間の座標軸とされる。
ここで、検索軸は任意の座標系における座標軸とすることができる。具体的には例えば、直交座標系または斜交座標系などの空間において検索軸は直線とされ、円座標系、円柱座標系または球座標系などの極座標系やその他の座標系において、検索軸は直線または曲線若しくは角度を示す基準とされる。なお、検索軸は必ずしも表示されなくてもよい。
例えば本実施の形態では、コンテンツに関連する情報としてメタデータが採用されている。従って、本実施の形態の検索軸とは、コンテンツの特徴を定める基準であるメタデータの値を座標として扱う座標軸であり、ユーザが検索軸上の座標の範囲を指定することにより、メタデータが対応する範囲の値を持つコンテンツの検索を行うことができるものである。
範囲指定の操作としては、例えば、ユーザがマップ中の所定範囲を直接指定する操作の他、複数の楽曲を選択する操作後に拡大表示を指示する操作を含む。楽曲検索システムは、かかる操作が行われた場合に、その操作対象範囲を拡大表示する機能を有することができる。
マップの範囲の拡大表示がなされた場合、楽曲検索システムは、そのマップの拡大表示と併せてまたは単独に、拡大率を表示したり、表示している楽曲の密度に応じて楽曲名を表示したり、その他各種付帯情報を表示する機能を有することもできる。
ユーザが検索した楽曲を元に、楽曲検索システムは、さらに絞り込み検索を行うために有効と思われるK個(KはN以下の整数値)の検索軸(以下、適宜絞り込み軸と称する)を自動的に決定し、ユーザに提示する機能を有することもできる。より正確には、K個の絞り込み軸となり得るK個以上の検索軸の候補(以下、絞り込み軸候補と称する)が、ユーザに提示され、そのうちのK個の絞り込み軸候補がユーザにより選択される。
ユーザがK個の絞り込み軸を選択する操作を行うと、楽曲検索システムは、検索空間のN次元の軸のうちのK次元の軸をK個の絞り込み軸を置換した新たな検索空間を構築し、この新たな検索空間に現在選択中の楽曲(元のマップに分布していた楽曲)をマッピングしなおすことで新たなマップを作成し、その新たなマップを表示させる機能を有することもできる。
楽曲検索システムは、マップ中の選択した範囲をユーザに確認させるために、そのマップに分布している楽曲(現在選択中の楽曲)のサビのみを連続再生する機能を有することもできる。ここでサビとは、楽曲のうち最も印象的な時間軸上の範囲を示す。
楽曲検索システムは、ユーザが再生操作を行った場合に、現在選択中の楽曲(マップに分布している楽曲)を含んだプレイリストを作成し、これを通常再生する機能を有することができる。
楽曲検索システムは、上述した各種機能を発揮することで、例えば、次のような第1乃至第5の特徴を有することができる。
即ち、第1の特徴とは、ユーザが選択した範囲を拡大表示することで、拡大前と比較してより詳細な情報を表示することができる、という特徴である。
第2の特徴とは、絞り込み検索のために有効な検索軸を、絞り込み軸として自動的に決定してユーザに提示することができる、という特徴である。なお、後述するように、より正確には、最終的な絞り込み軸を決定(選択)するのはあくまでもユーザであり、楽曲検索システムは、その決定を支援すべく、幾つかの絞り込み軸候補を提示することになる。
第3の特徴とは、絞り込み軸候補の決定に際し、各検索軸をユーザが使用する頻度を用いる、という特徴である。
第4の特徴とは、絞り込み軸候補の決定に際し、各検索軸における現在選択中の楽曲の値の分散もしくはエントロピーを用いる、という特徴である。
第5の特徴とは、現在選択中の楽曲をユーザに確認させるべく、選択操作中に現在選択中の楽曲のサビを連続再生する、という特徴である。
以下、図面を参照して、かかる各種特徴を有する楽曲検索システムについて、さらに詳しく説明していく。
図1は、検索軸の例を示す図である。即ち、図1に示されるように、各楽曲(図1の例では楽曲1乃至3のみが図示されている)には、速さ、明るさ、にぎやかさ、嗜好、よく聴く曲、朝聴く曲といったように、各楽曲に関する様々な種類の特徴情報(以下、かかる情報をメタデータと適宜称する)が付されている 。この各メタデータの各種類を、検索軸候補の各種類として採用することができる。
この場合、楽曲検索システムは、かかる様々な種類の検索軸候補の中から、N種類を検索軸として選択し、選択したN種類の検索軸により構築される検索空間に対して、各楽曲をマッピングしていくことで、マップを作成する。即ち、楽曲検索システムは、所定検索軸に対応する所定楽曲のメタデータの値を、その所定検索軸における座標値として決定し、決定した座標に所定楽曲を配置させる、という処理を各楽曲に対して施していくことで、各楽曲が分布されたマップを作成する。
ここで、所定検索軸における座標値となるメタデータの値とは、メタデータそのものの値を利用してもよいし、その他、メタデータの値に対して正規化等の加工をした値を利用してもよいし、また、メタデータが数値化されていない場合には、所定の規則に従って数値化したものを利用してもよい。
図2は、「明るさ」の検索軸(X軸と)と「速さ」の検索軸(Y軸と)とから構築される検索空間に各楽曲がマッピングされた結果得られるマップの一例を示している。
図2のマップ11において、1つの灰色の丸印が、1つの所定楽曲を示している。なお、マップにおける楽曲を示すシンボルは、丸印に限定されないことは言うまでも無い。ただし、以下、説明の簡略上、楽曲は丸印で示されるとする。
ユーザは、例えば、所望の特徴を示す座標値にマッピングされた丸印(楽曲)の選択操作を行うことで、その丸印に対応する楽曲を選択することができる。
この選択操作自体は、ユーザが使用する操作機器で採用可能な方法であれば、特に限定されない。
例えば操作機器としていわゆるタッチペンが採用されている場合には、ユーザは、そのタッチペンのペン先で、所望の特徴を示す座標値にマッピングされた丸印(楽曲)を選択することで、その丸印に対応する楽曲を選択することができる。
ただし、以下、本発明の理解を容易なものすべく、図2の記載にあわせて、カーソル21により選択する選択操作が採用されているとする。
この場合も、カーソル21の移動操作や選択操作の方法は、ユーザが使用する操作機器で採用可能な方法であれば、特に限定されない。
例えば操作機器としていわゆる十字キーが採用されている場合には、十字キーの押下操作を移動操作とし、選択キーの押下操作を選択操作としてそれぞれ採用することができる。この場合、ユーザが十字キーを一回押下する毎に、カーソル21が各丸印(楽曲)間をひとつずつ移動していくことになる。そして、ユーザは、所望の丸印(楽曲)を示す位置にカーソル21が移動した場合、選択キーの押下操作をすることで、その丸印に対応する楽曲を選択することができる。
また例えば操作機器としていわゆるマウスが採用されている場合には、マウスの移動操作をそのままカーソル21の移動操作とし、クリック操作を選択操作としてそれぞれ採用することができる。この場合、ユーザは、マウスを机上等で移動させることで、所望の丸印(楽曲)を示す位置までカーソル21を移動させ、そしてクリック操作を行うことで、その丸印に対応する楽曲を選択することができる。
ここで、「所望の特徴を示す座標値」について説明する。
図2の例では、各楽曲は、「速くて明るい曲」、「速くて暗い曲」、「遅くて暗い曲」、および「遅くて明るい曲」といった4つの特徴に分類されている。なお、ここでは説明の簡略上、全楽曲のうちの「速さ」の平均値等を境に、「速い」と「遅い」とを区分し、また、全楽曲のうちの「明るさ」の平均値等を境に、「明るい」と「暗い」とを区分しているとする。
この場合、図2の例のマップにおいては、第1象限(X軸とY軸とで分割される4つの領域のうちの右上の領域)に「速くて明るい曲」がマッピングされる。以下同様に、第2象限(X軸とY軸とで分割される4つの領域のうちの左上の領域)に「速くて暗い曲」がマッピングされる。第3象限(X軸とY軸とで分割される4つの領域のうちの左下の領域)に「暗くて遅い曲」がマッピングされる。第4象限(X軸とY軸とで分割される4つの領域のうちの右下の領域)に「遅くて明るい曲」がマッピングされる。
従って、例えばユーザが「速くて暗い曲」の選択を所望した場合、第2象限の座標値が「所望の特徴を示す座標値」となる。即ち、「速くて暗い曲」に分類される各楽曲は、第2象限内にマッピングされている(対応する丸印で表示されている)ので、ユーザは、第2象限内の各丸印のうちの所望の1つをカーソル21で選択する操作を行うことで、その丸印に対応する楽曲を選択することができる。この場合、一口に「速い曲」といっても、その速さの度合いは様々であるが、その度合いは座標値に対応している。そこで、ユーザは、より一段と「速い曲」を選択したい場合には、Y軸の座標値の絶対値がより一段と大きい値を有する楽曲、即ち、図2中より一段と上方に位置する丸印を選択すればよい。
ここで注意すべき点は、図2の例では、本発明の理解を容易なものとすべく、マッピングされた楽曲の数は少なくされている点である。其れゆえ、各丸印(楽曲)は他の丸印(楽曲)とは重ならずに表示され、カーソル21を用いて1つの丸印(楽曲)を容易に選択できるようになされているのである。
ところが、近年の記録デバイスは、記録容量が著しく増大しており、膨大な数の楽曲を記録できるようになっている。図示はしないが、かかる記録デバイスに記録された全楽曲をマッピングした場合には、類似の特徴を有する複数の丸印(楽曲)が重なって表示され、カーソル21を用いて1つの丸印(楽曲)を選択することは非常に困難な操作となる。
そこで、このような場合を考慮して、楽曲検索システムは、上述したように、マップ中の所定範囲を指定したり、複数の楽曲を選択する操作した後に拡大表示を指示する操作を可能とするUIをユーザに提供するようにしている。換言すると、ユーザは、1つの楽曲(丸印)の選択のみならず、所定範囲に含まれる複数の楽曲(丸印)を同時に選択する操作(予め決められている拡大範囲を指示するための拡大表示操作も含む)を行うことができる。以下、かかる操作を範囲指定操作と称し、範囲指定操作により指定された範囲(拡大表示操作に伴う、予め決められている拡大範囲も含む)を指定範囲と称する。また、指定範囲に含まれる複数の楽曲(丸印)が同時に選択されている場合、それらの楽曲を、現在選択中の楽曲と適宜称する。
具体的には例えば図2の例では、ユーザは、範囲指定操作として、カーソル21を用いて範囲12を指定範囲として指定することで、「速くて暗い曲」に分類される複数の楽曲(丸印)を同時に選択することができる。
なお、この場合の範囲指定操作の具体的な方法は、特に限定されない。例えばマウスを利用する場合には、ユーザは、矩形、楕円、自由曲線等を描くようにマウスを机上等で動かすことで、かかるマウスの軌跡に対応する範囲(矩形、楕円、自由曲線等の範囲)をマップ上に表示させ、その範囲を指定範囲として指定する場合にクリック操作をする、といった操作を範囲指定操作として採用することができる。
このようにして、範囲指定操作が行われると、楽曲検索システムは、指定範囲を拡大表示させる。具体的には例えば、図2の例では、範囲12が指定範囲として指定されているので、このような場合、図3に示されるように、第2象限の一部分に範囲12を含んでいるマップ11−1から、範囲12が拡大表示されたマップ11−2に画面表示が切り替わる。
マップ11−2では、各楽曲(丸印)の近傍には、各楽曲の付帯情報として、「アーティスト名」や「曲名」がそれぞれ表示される。この場合、ユーザは、マップ11−2を見ることで、現在選択中の楽曲について、ここでは、「速くて暗い曲」に分類される複数の楽曲(丸印)について、拡大前のマップ11−1と比較してより詳細な情報を容易に得ることができるようになる。
なお、「アーティスト名」や「曲名」は、各楽曲の付帯情報の例示に過ぎない。即ち、図示はしないが、楽曲検索システムは、マップの拡大表示を行った場合、表示されている各楽曲(丸印)の密度に応じた適切な情報を適切な個数だけ、各楽曲の各種付帯情報として表示させることもできる。
また、拡大表示の場合におけるX軸(本例では「明るさ」の検索軸)とY軸(本例では「速さ」の検索軸)との表示位置は、図3の例では便宜上、選択された範囲12の中央で両軸が交差する位置とされているが、図3の例に限定されず、任意の位置でよい。
このようにして、ユーザは、指定範囲として指定した範囲12が拡大表示されたマップ11−2から、所望の楽曲(丸印)を選択することができるようになる。ただし、ユーザは、マップ11−2から所望の楽曲(丸印)を直ちに選択する必要は無く、さらに、選択する楽曲の候補を絞り込んで検索することもできる。
この場合、ユーザは、範囲12をより狭めた範囲を指定範囲として新たに指定することによって、楽曲の候補を絞り込んで検索してもよい。即ち、ユーザは、楽曲の個数を絞り込むことによって、楽曲の候補を絞り込んで検索することもできる。
或いはまた、ユーザは、楽曲の個数は変化させずに、即ち、現在選択中の楽曲のまま、その視点を変えた検索をすることもできる。即ち、ユーザは、現在選択中の楽曲の中から、別の特徴に基づいて、最終的に選択する楽曲の候補を絞り込んで検索することもできる。
かかる検索は、例えば、検索軸を変更した新たなマップをユーザに提示することにより実現可能となる。この場合、ユーザの便宜のため、楽曲検索システムは、絞り込みの検索に有効と思われる検索軸、即ち、上述した絞り込み軸候補を自動的に決定して、例えば図4に示されるように、マップ11−2とともにまたは別に、決定した1以上の絞り込み軸候補のリスト13を自動的に提示することができる。
なお、自動的に行うとは、ユーザの明示の指示(操作)が無くとも、楽曲検索システムが自律的に判断して処理を行うことを意味する。また、絞り込み軸候補の提示数は、図4の例では3つされているが、図4の例に特に限定されない。
また、楽曲検索システムは、X軸とY軸とについてそれぞれ絞り込み軸候補を個別に決定して、例えば図5に示されるように、マップ11−2とともにまたは別に、決定した1以上のX軸の絞り込み軸候補のリスト13―Xと、決定した1以上のY軸の絞り込み軸候補のリスト13―Yとを個別に自動的に提示することができる。
さらにまた、楽曲検索システムは、X軸とY軸との各絞り込み軸候補の組合せを1以上決定して、例えば図6に示されるように、マップ11−2とともにまたは別に、決定した1以上のX軸とY軸の各絞り込み軸候補の組合せのリスト13―XYを自動的に提示することができる。
なお、絞り込み軸候補の決定手法自体は、特に限定されず、設計者等毎に、ユーザにとって便宜であると判断する任意の手法を採用すればよい。ここでは、それらの決定手法のうちの幾つかの例について、以下、図7乃至図13を参照して説明する。
例えば、楽曲検索システムは、絞り込み軸候補を決定する指標として、既に使用した検索軸以外の全ての検索軸に対して、現在選択中の楽曲の分散Sを演算することができる。分散Sは次の式(1)に従って演算される。
ここで、既に使用した検索軸とは、現在選択中の楽曲を表示するためのマップのX軸またはY軸として既に使用したもの、例えば上述した図3乃至図6の例では「明るさ」と「速さ」の検索軸をいう。
図7は、既に使用した検索軸以外の全ての検索軸に対して演算された、現在選択中の楽曲の分散Sの一例を示している。
また、既に使用した検索軸以外の全ての検索軸のうちの、所定検索軸に対応するメタデータが連続値ではない場合、楽曲検索システムは、分散Sの代わりに、絞り込み軸候補を決定する指標として例えば、現在選択中の楽曲を所定検索軸で分類した場合のエントロピーH(X)を演算することもできる。エントロピーH(X)は次の式(2)に従って演算される。
なお、所定検索軸に対応するメタデータが連続値ではない場合とは、例えば、メタデータの一例である図1の「よく聴く曲」や「朝聴く曲」のように「Yes」, 「No」といった2値を持つ場合、メタデータの一例である図1の「嗜好」のように「好き」、「嫌い」の2値を持つ場合、或いはまた、図示はしないが「当てはまる」、「どちらでもない」、「当てはまらない」といった3値を持つ場合、即ち離散値を持つ場合を意味する。
なお、以下、単に分散Sと称している場合には、検索軸として採用されたメタデータの種類によっては、エントロピーH(X)を意味している場合もある。
また例えば、楽曲検索システムは、ユーザが普段の検索によく使う検索軸を記憶しておき、この記憶内容に基づいて、絞り込み軸候補を決定する指標として使用頻度を演算することもできる。
この場合の使用頻度の演算手法自体は、特に限定されず、例えば、楽曲検索システムは、ユーザの操作により所定検索軸を用いた検索が行われる度に、その所定検索軸の使用頻度をカウントアップしていくことができる。また、例えば、楽曲検索システムは、所定期間以上検索に使用されていない検索軸については、使用頻度の値を下げる処理をすることもできる。
図8は、図7の分散Sの演算対象の検索軸についての各使用頻度の一例を示している。
さらにまた、X軸とY軸の各絞り込み軸候補の組合せのリスト(例えば図6のリスト13―XY参照)をユーザに提示すべく、楽曲検索システムは、ユーザが普段検索をする際にX軸とY軸としてよく使う2つの検索軸の組合せを記憶しておき、この記憶内容に基づいて、絞り込み軸候補を決定する指標として、その組合せの使用頻度を演算することもできる。なお、組合せの検索軸としては、既に使用した検索軸も含まれ得る。X軸とY軸とのうち、一方の軸を、既に使用した検索軸として、他方の軸を、それ以外の検索軸とした組合せも、ユーザへの提示対象の候補となり得るからである。
組合せの使用頻度の演算手法自体は、特に限定されず、例えば、上述した使用頻度の演算手法の例をそのまま採用できる。
図9は、図7の分散Sの演算対象の検索軸のうちの2つの検索軸の組合せの使用頻度の一例の一部として、既に使用した検索軸の一例である「速さ」とそれ以外の各検索軸との組合せの使用頻度を示している。
さらにまた、X軸の絞り込み軸候補のリスト(例えば図5のリスト13―X参照)と、Y軸の絞り込み軸候補のリスト(例えば図5のリスト13―Y参照)とをそれぞれ個別にユーザに提示すべく、楽曲検索システムは、ユーザが普段検索をする際にX軸としてよく使う検索軸とY軸としてよく使う検索軸とのそれぞれを個別に記憶しておき、これらの各記憶内容に基づいて、X軸とY軸の各絞り込み軸候補をそれぞれ決定する指標として、X軸とY軸としてのそれぞれの使用頻度を演算することもできる。
X軸としての使用頻度の演算手法自体は、特に限定されず、例えば、上述した使用頻度の演算手法の例をX軸についてそのまま当てはめることで採用できる。同様に、Y軸としての使用頻度の演算手法自体は、特に限定されず、例えば、上述した使用頻度の演算手法の例をY軸についてそのまま当てはめることで採用できる。
図10は、図7の分散Sの演算対象の検索軸についての、X軸としての使用頻度とY軸としての使用頻度とのそれぞれの一例を示している。
さらに、楽曲検索システムは、絞り込み軸候補を決定する指標として、既に使用した検索軸以外の全ての検索軸に対して、残す検索軸の値との相関の低さiCorrelを計算することもできる。ここで、残す検索軸とは、表示中のマップ(例えば上述した図3乃至図6の状態のマップ11−2)を構成するX軸とY軸とのうちの、一方の軸を絞り込み軸に置き換える場合における表示中の他方の軸をいう。なお、以下、残す検索軸以外の軸、即ち、絞り込み軸に置き換える検索軸を、置換対象軸と称する。
相関の低さiCorrelは次の式(3)に従って演算される。
即ち、楽曲検索システムは、絞り込み軸候補となり得る検索軸の特徴量をベクトルx1で表現し、また、残す検索軸の特徴量をベクトルx2で表現し、それぞれ式(3)に代入することで、相関の低さiCorrelを演算することができる。
図11は、図7の分散Sの演算対象の検索軸についてのそれぞれの残す検索軸との相関の低さiCorrelの一例を示している。ただし、図11の例では、残す検索軸は、上述した図3乃至図6の状態のマップ11−2を構成するX軸、即ち、「明るさ」の検索軸とされている。
このようにして、楽曲検索システムは、絞り込み軸候補を決定する指標として、各検索軸について分散S、エントロピーH(X)、各種使用頻度、相関の低さiCorrelなどを演算することができる。なお、分散S、エントロピーH(X)、各種使用頻度、相関の低さiCorrelなどは、絞り込み軸候補を決定する指標の例示に過ぎず、その他各種の指標を採用できることは言うまでも無い。
次に、楽曲検索システムは、これらの各種指標のうちの1以上を用いて、各検索軸のスコアをそれぞれ演算する。そして、楽曲検索システムは、スコアを用いる所定の規則に従って、各検索軸の中から絞り込み軸候補を1以上決定して、ユーザに提示する。
具体的には例えば、上述した図7乃至図11を用いて説明した分散S(エントロピーH(X)も適宜含まれている場合がある)、使用頻度、および相関の低さiCorrelから演算されたスコアの例が、図12に示されている。
図12において、「分散」の項目値が図7の各値に対応しており、「軸の使用頻度」の項目値が図8の各値に対応している。
また、図12は、後述する図14に示されるように、残す検索軸が上述した図3乃至図6の状態のマップ11−2を構成するX軸、即ち、「明るさ」の検索軸とされている場合の一例を示している。換言すると、図12は、置換対象軸が、Y軸、即ち「速さ」の検索軸とされている場合の一例を示している。従って、図12おいて、「組合せ使用頻度」の項目値としては、図9の例の各値ではなく、残す検索軸である「明るさ」の検索軸とそれ以外の各検索軸との組合せの使用頻度が示されている。
また、「置換対象軸としての使用頻度」とは、「X軸としての使用頻度」と「Y軸としての使用頻度」とのうちの置換対象軸とされている方の使用頻度を意味している。従って、図12の例では、上述したようにY軸が置換対象軸とされているので、「置換対象としての使用頻度」の各項目値が図10の「Y軸としての使用頻度」の各項目値に対応している。
また、図12おいて、「残す検索軸の相関の低さ」の各項目値は、図11の「相関の低さ」の各項目値に対応している。図11も、上述したように、残す検索軸が「明るさ」の検索軸の例であるからである。
ここで、各検索軸のうちの、スコアの高さが上位3番目までの検索軸を絞り込み軸候補として決定する、という規則が定義されているとする。
この場合、図13に示されるように、最高のスコア(2117)を有する「テンポ」の検索軸、2番目のスコア(1440)を有する「音量の揺れ」の検索軸、および、3番目のスコア(945)を有する「好きな曲」の検索軸が、絞り込み軸候補としてそれぞれ決定される。そして、例えば上述した図4に示されるように、マップ11−2とともにまたは別に、これらの絞り込み軸候補のリスト13が自動的にユーザに提示されることになる。
なお、絞り込み軸候補を決定するための規則自体は、図12や図13を用いて説明した例に特に限定されず、その他、スコアを用いた任意の規則、例えば閾値以上のスコアを有する検索軸を絞り込み軸候補として決定するといった規則等様々な規則を採用することができる。
また、上述した例では、現在表示中の検索軸から絞り込み軸に置換される軸、即ち、置換対象軸は、Y軸とされたが、当然ながらX軸とされてもよい。また、置換対象軸の決定手法自体は、特に限定されず、例えば次のような手法を採用できる。即ち、現在表示中のX軸とY軸のうちの、分散Sが小さい方の検索軸を置換対象軸として決定する、という手法を採用することができる。
また、上述した図4の例のように、所定の1つの置換対象軸に対する絞り込み軸候補のリスト13を提示する場合には、楽曲検索システムは、上述したように、図12の例に列挙された各種指標のうちの、「分散」、「軸の使用頻度」、および「残す検索軸との相関の低さ」の項目値のみを用いてスコアを演算することで、絞り込み軸候補を決定できる。
ただし、上述した図5の例のように、X軸の絞り込み軸候補のリスト13―Xと、Y軸の絞り込み軸候補のリスト13―Yとを個別に提示する場合には、楽曲検索システムは、X軸とY軸との各絞り込み軸候補をそれぞれ決定する必要がある。従って、このような場合、図12の例に列挙された「分散」乃至「残す検索軸との相関の低さ」の項目値の全てが用いられてスコアが演算される。
また、上述した図6の例のように、X軸とY軸の各絞り込み軸候補の組合せのリスト13―XYを提示する場合には、楽曲検索システムは、各検索軸の全組合せ(ペア)についてスコアをそれぞれ演算する必要がある。
また、繰り返しになるが、絞り込み軸候補を決定するために必要なスコアの演算において、使用される指標自体は、上述した例に限定されない。ただし、上述した例を採用すると好適である。そこで、以下、好適である理由の幾つかについて説明する。
例えば、分散SやエントロピーH(X)を指標として用いてスコアを演算することで、現在選択中の楽曲をより良く分離できる検索軸が、絞り込み軸候補としてユーザに提示されるようになる。
例えば、各種使用頻度を指標として用いてスコアを演算することで、ユーザが普段あまり使わない検索軸(よく分からない検索軸含む)がユーザに提示されることを防止できる。
例えば、組合わせの使用頻度を用いてスコアを演算することで、ユーザが2次元状のマップを構成するのに便利だと思っている特徴量の組合わせが、X軸とY軸の各絞り込み軸候補の組合せとして提示されるようになる。
例えば、置換対象軸としての使用頻度、即ち、「X軸としての使用頻度」または「Y軸としての使用頻度」を用いてスコアを演算することで、ユーザがX軸として使用したい検索軸、またはY軸として使用したい検索軸がそれぞれ、絞り込み軸候補としてユーザに提示されるようになる。換言すると、例えばX軸に使用してもしっくりこないとユーザが感じている検索軸については、X軸の絞り込み軸候補としてユーザに提示することを禁止することもできるようになる。
また例えば、残す検索軸の相関の低さiCorrelを用いてスコアを演算することで、残す検索軸と相関の高い検索軸については、絞り込み軸候補としてユーザに提示することを禁止できるようにもなる。相関の高い2つの検索軸をX軸とY軸としてマップ11を構築して表示させると、各楽曲(丸印)の分布が1列に並ぶことになり、これらの各楽曲(丸印)を2次元平面上に表示させる意味がなくなるからである。
以上説明したように、ユーザが範囲指定操作を行うことで(例えば上述した図2参照)、楽曲検索システムは、指定範囲を拡大表示させる(例えば上述した図3参照)。さらに、楽曲検索システムは、その拡大表示とともにまたは別に、1以上の絞り込み軸候補をリスト化してユーザに提示する(例えば上述した図4乃至図6参照)。なお、以下、かかる楽曲検索システムの一連の処理を、範囲指定操作/拡大操作処理と称する。
そこで、ユーザは、かかるリストに含まれる1以上の絞り込み軸候補の中から、所望の1つを絞り込み軸として選択する操作を行うことで、マップ中の置換対象軸(X軸またはY軸)を絞り込み軸に変更させる指示を、楽曲検索システムに対して行うことができる。以下、かかる操作を、絞り込み軸選択操作と称する。
具体的には例えば、上述した図4に示される状態、即ち、マップ11−2とともに、絞り込み軸候補のリスト13が表示されている状態であるとする。
この場合、例えば本例ではカーソル21を用いたUIが採用されているので、ユーザは、絞り込み軸選択操作として、リスト13に列挙された絞り込み軸候補の中から、即ち、「テンポ」、「音量の揺れ」、「好きな曲」の中から所望の1つを、カーソル21を用いて指定することで、それを絞り込み軸として選択することができる。
例えば図14の例では、同図の中央部分の図に示されるように、カーソル21によって「好きな曲」が指定されているので、かかる「好きな曲」の検索軸が絞り込み軸として選択されることになる。この場合、楽曲検索システムは、X軸については「明るさ」の検索軸(いわゆる上述した残す検索軸)のままとして、Y軸については「速さ」から「好きな曲」の検索軸に変更して、検索空間を再構築する。そして、楽曲検索システムは、表示中のマップ11−2に分布されている各楽曲(丸印)を、再構築された検索空間に再マッピングしていくことで、図14の右方部分の図に示されるように、マップ11−3を再作成して、ユーザに提示する。即ち、ユーザからすると、マップ11−2からマップ11−3に表示画面が更新される。なお、以上の楽曲検索システムの一連の処理を、以下、絞り込み軸選択操作処理と称する。
ところで、図示はしないが、ユーザは、楽曲検索システムにより提示された絞り込み軸候補以外の検索軸についても、自らの意思で変更対象の検索軸(以下、変更対象検索軸と称する)として選択できると便利である。そこで、楽曲検索システムは、変更対象検索軸を指定する操作も行えるように構成されている。以下、かかる操作を、絞り込み軸選択操作と区別するために、検索軸変更操作と称する。
検索軸変更操作が行われた場合の楽曲検索システムの処理は、絞り込み軸選択操作処理と基本的に同様である。即ち、楽曲検索システムは、X軸とY軸とのうちの置換対象軸として指定された方の軸(両軸を置換対象軸として指定することも可能である)については、変更対象検索軸に変更し、他方の軸については表示中の検索軸(いわゆる上述した残す検索軸)のままとして、検索空間を再構築する。そして、楽曲検索システムは、表示中のマップに分布されている各楽曲(丸印)を、再構築された検索空間に再マッピングしていくことで、マップを再作成して、ユーザに提示する。なお、以上の楽曲検索システムの一連の処理を、絞り込み軸選択操作処理と区別するために、検索軸変更操作処理と称する。
また例えば、範囲指定操作後に所定操作がユーザにより行われた場合、楽曲検索システムは、ユーザが選択した楽曲の内容を確認させるために、現在選択中の楽曲のサビの連続再生を行う。以下、かかる楽曲検索システムの処理を楽曲選択操作処理と称し、かかる楽曲選択操作処理の実行を指示する所定操作を、楽曲選択操作と称する。
具体的には例えば、範囲指定操作が行われ、その結果として、上述した図3のマップ11−2が表示されている状態で、楽曲選択操作が行われたとする。この場合、楽曲選択操作処理として、図15に示されるように、マップ11−2に表示されている3つの楽曲(3つの丸印)が現在選択中の楽曲として認識され、それぞれのサビのみの連続再生が行われる。
なお、楽曲選択操作のタイミングは、範囲指定操作直後である必要は無く、上述した絞り込み軸選択操作や検索軸変更操作が行われた後でも構わない。この場合、絞り込み軸選択操作処理や検索軸変更操作処理によって、X軸やY軸が絞り込み軸や変更対象検索軸に変更されたマップが表示されている。即ち、表示画面中のマップは更新されている。しかしながら、マップの表示の更新と、サビの再生とは独立した処理とすることができるので、マップに表示されている各楽曲(各丸印)が現在選択中の楽曲として認識され、それぞれのサビのみの連続再生が行われることは、マップの表示が更新された後でも何等変わらない。
さらにまた例えば、範囲指定操作後に所定の再生操作がユーザにより行われた場合、楽曲検索システムは、現在選択中の楽曲をプレイリストに追加し、そのプレイリストに従った再生を行う。以下、かかる楽曲検索システムの処理を、再生操作処理と称する。
具体的には例えば、範囲指定操作が行われ、その結果として、上述した図3のマップ11−2が表示されている状態で、再生操作が行われたとする。この場合、再生操作処理として、図16に示されるように、マップ11−2に表示されている3つの楽曲(3つの丸印)が現在選択中の楽曲として認識され、プレイリストにそれぞれ追加される。即ち、図16の例では、楽曲5,楽曲9,楽曲12がプレイリストにそれぞれ追加される。そして、そのプレイリストの各楽曲が再生される。
なお、再生操作のタイミングは、範囲指定操作直後である必要は無く、上述した絞り込み軸選択操作や検索軸変更操作が行われた後でも構わない。この場合、絞り込み軸選択操作処理や検索軸変更操作処理によって、X軸やY軸が絞り込み軸や変更対象検索軸に変更されたマップが表示されている。即ち、表示画面中のマップは更新されている。しかしながら、マップの表示の更新と、プレイリストの再生とは独立した処理とすることができるので、マップに表示されている各楽曲(各丸印)が現在選択中の楽曲として認識され、それぞれがプレイリストに追加されてそれらの再生が行われることは、マップの表示が更新された後でも何等変わらない。
同様に、サビの再生と、プレイリストの再生とは独立した処理とすることができるので、楽曲選択操作処理によりサビの連続再生が行われているか否かとは無関係に、再生操作がなされれば、再生操作処理が実行されて、プレイリストによる楽曲の再生が行われることになる。
以上の図1乃至図16を参照して説明した楽曲検索システムの処理(以下、検索操作処理と称する)をまとめると、例えば図17に示されるフローチャートのように表すことができる。即ち、図17は、本発明が適用される検索操作処理の一例を説明するフローチャートである。
ステップS1において、楽曲検索システムは、使用頻度の最も高い2軸で楽曲をマッピングして表示する。
ここに、使用頻度の最も高い2軸とは、各楽曲の複数のメタデータに対応する複数の検索軸候補のうちの、使用頻度が最も高い2つの検索軸を、検索空間におけるX軸またはY軸として使用することを意味する。使用頻度としては、X軸とY軸との使用を区別しない場合の使用頻度であってもよいし、X軸とY軸との使用を区別した場合の使用頻度であってもよい。この場合、前者の使用頻度は例えば上述した図8の例に対応し、後者の使用頻度は例えば上述した図10のX軸またはY軸としての使用頻度に対応する。また、図9の例のような組合せ使用頻度から、最も使用頻度が高い組合せを選択し、その組合せに含まれる2軸を、使用頻度の最も高い2軸として採用してもよい。
換言すると、「使用頻度の最も高い2軸で楽曲をマッピングして表示する」とは、次のような一連の処理の表現形態を単純化したものである。即ち、楽曲検索システムは、様々な検索軸候補の中から使用頻度が最も高い2つの検索軸を選択し、選択した2つの検索軸をそれぞれX軸またはY軸とする検索空間を構築する。楽曲検索システムは、各楽曲を検索空間にマッピングしていくことで、マップを作成する。そして、楽曲検索システムは、このマップを表示する。以上の一連の処理が、「使用頻度の最も高い2軸で楽曲をマッピングして表示する」という表現形態で表されている。
なお、以下の各種処理も、冗長な表現を避けるべく、「楽曲をマッピングして表示する」という表現形態を用いて適宜説明する。
このようにして、検索操作処理の初期画面としてのマップがステップS1の処理で表示されると、処理はステップS2に進む。
ステップS2において、楽曲検索システムは、ユーザの操作がなされたか否かを判定する。
即ち、ユーザが何等かの操作を行うまで、ステップS2の処理でNOであると判定されて、再度ステップS2の判定処理が実行される、というループ処理が繰り返される。
その後、ユーザが何等かの操作を行うと、ステップS2の処理でYESであると判定されて、処理はステップS3に進む。
ステップS3において、楽曲検索システムは、検索軸変更操作であったか否かを判定する。
ステップS3において、検索軸変更操作であったと判定した場合、楽曲検索システムは、ステップS4において、上述した検索軸変更操作処理を実行する。その後、処理はステップS2に戻され、それ以降の処理が繰り返される。なお、検索軸変更操作処理の詳細例については、図18を参照して後述する。
これに対して、ステップS3において、検索軸変更操作ではないと判定された場合、処理はステップS5に進む。
ステップS5において、楽曲検索システムは、絞り込み軸選択操作であったか否かを判定する。
ステップS5において、絞り込み軸選択操作であったと判定した場合、楽曲検索システムは、ステップS6において、上述した図14を用いて説明した絞り込み軸選択操作処理を実行する。その後、処理はステップS2に戻され、それ以降の処理が繰り返される。なお、絞り込み軸選択操作処理の詳細例については、図19を参照して後述する。
これに対して、ステップS5において、絞り込み軸選択操作ではないと判定された場合、処理はステップS7に進む。
ステップS7において、楽曲検索システムは、楽曲選択操作であったか否かを判定する。
ステップS7において、楽曲選択操作であったと判定した場合、楽曲検索システムは、ステップS8において、上述した図15を用いて説明した楽曲選択操作処理を実行する。その後、処理はステップS2に戻され、それ以降の処理が繰り返される。なお、楽曲選択操作処理の詳細例については、図20を参照して後述する。
これに対して、ステップS7において、楽曲選択操作ではないと判定された場合、処理はステップS9に進む。
ステップS9において、楽曲検索システムは、範囲指定操作であったか否かを判定する。
ステップS9において、範囲指定操作であったと判定した場合、楽曲検索システムは、ステップS10において、上述した図2乃至図13を用いて説明した範囲指定操作/拡大操作処理を実行する。その後、処理はステップS2に戻され、それ以降の処理が繰り返される。なお、範囲指定操作/拡大操作処理の詳細例については、図21を参照して後述する。
これに対して、ステップS9において、範囲指定操作ではないと判定された場合、処理はステップS11に進む。
ステップS11において、楽曲検索システムは、再生操作であったか否かを判定する。
ステップS11において、再生操作であったと判定した場合、楽曲検索システムは、ステップS12において、上述した図16を用いて説明した再生操作処理を実行する。これにより、検索操作処理全体が終了となる。なお、再生操作処理の詳細例については、図22を参照して後述する。
これに対して、ステップS11において、再生操作ではないと判定された場合、検索操作処理全体が終了となる。
以下、図18乃至図22を参照して、図17の検索操作処理における各操作処理の詳細例について個別に説明していく。
図18は、図17のステップS4の検索軸変更操作処理の詳細例を説明するフローチャートである。
ステップS21において、楽曲検索システムは、検索空間を構成する2軸(X軸とY軸)のうちの少なくとも一方を、ユーザの指定した変更対象検索軸に変更する。
ステップS22において、楽曲検索システムは、変更後の2軸で楽曲をマッピングして表示する。
ステップS23において、楽曲検索システムは、変更対象検索軸の使用頻度を更新する。
これにより、図17のステップS4の検索軸変更操作処理は終了し、処理はステップS2に戻され、それ以降の処理が繰り返される。
図19は、図17のステップS6の絞り込み軸選択操作処理の詳細例を説明するフローチャートである。
ステップS41において、楽曲検索システムは、検索空間を構成する2軸(X軸とY軸)のうちの少なくとも一方を、ユーザの選択した絞り込み軸に変更する。
ステップS42において、楽曲検索システムは、変更後の2軸で楽曲をマッピングして表示する。表示の具体例については、上述した図14における変更前後のマップ11−2,11−3を参照するとよい。
ステップS43において、楽曲検索システムは、絞り込み軸(そのように選択された検索軸)の使用頻度を更新する。
これにより、図17のステップS6の絞り込み軸選択操作処理は終了し、処理はステップS2に戻され、それ以降の処理が繰り返される。
図20は、図17のステップS8の楽曲選択操作処理の詳細例を説明するフローチャートである。
ステップS61において、楽曲検索システムは、現在選択中の楽曲から代表曲を選択し、サビを再生する。
なお、代表曲の選択手法自体は、特に限定されない。ここでは例えば、説明の簡略上、上述した図15に示されるマップ11−2に表示されている3つの楽曲(丸印)が現在選択中の楽曲とされており、第1象限乃至第4象限の順番でサビが再生されていくとする。この場合、第2象限に表示されている楽曲(丸印)が代表曲として選択され、サビが再生される。
ステップS62において、楽曲検索システムは、サビの再生が終わったか否かを判定する。
即ち、サビの再生が終了するまで、ステップS62の処理でNOであると判定されて、再度ステップS62の判定処理が実行される、というループ処理が繰り返される。
その後、サビの再生が終了すると、ステップS62の処理でYESであると判定されて、処理はステップS63に進む。例えば上述した例の場合、第2象限に表示されている楽曲(丸印)のサビが終了すると、ステップS62の処理でYESであると判定されて、処理はステップS63に進む。
ステップS63において、楽曲検索システムは、処理の終了条件を満たしたか否かを判定する。
終了条件自体は特に限定されない。例えばここでは、現在選択中の楽曲の全てのサビの再生が終了したことが、終了条件として採用されているとする。例えば上述した例の場合、第3象限,第4象限にそれぞれ表示されている2つの楽曲(丸印)のサビがまだ再生されていないので、ステップS63の処理でNOであると判定されて、処理はステップS64に進む。
ステップS64において、楽曲検索システムは、現在選択中の楽曲のうち、次の楽曲のサビを再生する。例えば上述した例の場合、次に、第3象限に表示されている楽曲(丸印)のサビが再生される。
その後、処理はステップS62に戻され、それ以降の処理が繰り返される。例えば上述した例の場合、第3象限に表示されている楽曲(丸印)のサビが再生されている間は、ステップS62の判定処理が繰り返し実行され、その再生が終了すると、ステップS62の処理でYESであると判定された後、ステップS63の処理でNOであると判定されて、ステップS64の処理で、次に、第4象限に表示されている楽曲(丸印)のサビが再生される。
そして、処理は再度ステップS62に戻され、第4象限に表示されている楽曲(丸印)のサビが再生されている間は、ステップS62の判定処理が繰り返し実行され、その再生が終了すると、ステップS62の処理でYESであると判定されて、処理はステップS63に進む。この段階になると、現在選択中の楽曲の全てのサビの再生が終了したという終了条件が満たされたことになるので、ステップS63の処理でNOであると判定されて、楽曲選択操作処理は終了となる。即ち、図17のステップS8の処理は終了し、処理はステップS2に戻され、それ以降の処理が繰り返される。
図21は、図17のステップS10の範囲指定操作/拡大操作処理の詳細例を説明するフローチャートである。
ステップS81において、楽曲検索システムは、指定範囲/拡大範囲を拡大し、楽曲をマッピングして表示する。具体的には例えば、上述した図3の例のマップ11−1が表示されている状態で範囲12が指定範囲として指定された場合、その範囲12の拡大表示であるマップ11−2が表示される。
ステップS82において、楽曲検索システムは、拡大率に応じて、楽曲の詳細情報(付帯情報)を表示する。例えば上述した図4の例のマップ11−2のように、各楽曲(丸印)の近傍には、その楽曲の「アーティスト名」や「曲名」といった付帯情報が表示される。
ステップS83において、楽曲検索システムは、置換対象軸を決定する。ここでは例えば、上述したように、使用中の検索軸のうちの分散Sの小さい方が、置換対象軸に決定される。具体的には例えば、上述した図14の例では、「速さ」の検索軸、即ちY軸が置換対象軸に決定されることになる。
ステップS84において、楽曲検索システムは、使用中以外の検索軸に対する選択楽曲の分散Sを演算する。分散Sは上述した式(1)に従って演算される。また、このステップS84の処理には、上述した式(2)に従ってエントロピーH(X)が演算される処理も含まれ得る。なお、上述した図2乃至図14の例でいえば、使用中以外の検索軸とは、「速さ」と「明るさ」以外の検索軸を指す。
ステップS85において、楽曲検索システムは、使用中以外の検索軸のそれぞれについて、分散Sに、その検索軸の使用頻度、残す検索軸との組合わせの使用頻度、置換対象軸(X軸またはY軸であって、上述した図2乃至図14の例でいえばY軸)としての使用頻度、および、残す検索軸との相関の低さiCorrelを掛け合わせることで、スコアを演算する。
なお、ステップS85のスコアの演算手法は、図21に記述されている演算手法に特に限定されないことは、上述したとおりである。
ステップS86において、楽曲検索システムは、スコアの高い数個の検索軸を、絞り込み軸候補としてユーザに提示する。
具体的には例えば、ステップS85の処理で、上述した図12,図13の例のスコアが演算された場合には、ステップS86の処理として、図4や図14に示されるように、最高のスコア(2117)を有する「テンポ」、2番目のスコア(1440)を有する「音量の揺れ」の、および、3番目のスコア(945)を有する「好きな曲」が、絞り込み軸候補として羅列されたリスト13が自動的にユーザに提示されることになる。
なお、ステップS86の絞り込み軸候補の決定手法は、図21に記述されている決定手法に特に限定されないことは、上述したとおりである。
これにより、図17のステップS10の範囲指定操作/拡大操作処理は終了し、処理はステップS2に戻され、それ以降の処理が繰り返される。
図22は、図17のステップS12の再生操作処理の詳細例を説明するフローチャートである。
ステップS101において、楽曲検索システムは、現在選択中の楽曲をプレイリストに追加する。
ここでは例えば、説明の簡略上、上述した図16に示されるマップ11−2に表示されている3つの楽曲(丸印)が現在選択中の楽曲とされており、第2象限に表示されている楽曲(丸印)が楽曲5とされ、第3象限に表示されている楽曲(丸印)が楽曲9とされ、第4象限に表示されている楽曲(丸印)が楽曲12とされている。この場合、図16に示されるように、楽曲5、楽曲9、および楽曲12がその順番で再生されるプレイリストが生成される。
ステップS102において、楽曲検索システムは、プレイリストの楽曲を再生する。例えば上述した例では、楽曲5の再生が開始され、その後、楽曲9、楽曲12が順次連続再生される。
この間、ステップS103において、楽曲検索システムは、プレイリスト中の全ての楽曲の再生が終了したか否かを判定する。
即ち、プレイリスト中の全ての楽曲の再生が終了するまで、ステップS103の処理でNOであると判定されて、処理はステップS102に戻され、再度ステップS102の処理が実行される、というループ処理が繰り返される。例えば上述した例では、最後の楽曲12の再生が終了するまで、このループ処理が繰り返される。
その後、プレイリスト中の全ての楽曲の再生が終了すると、例えば上述した例では、最後の楽曲12の再生が終了すると、ステップS103の処理でYESであると判定されて、再生操作処理は終了となる。即ち、図17のステップS12の処理は終了し、検索操作処理全体も終了となる。
以上図17乃至図22を用いて説明した検索操作処理を実行可能な楽曲検索システムは、例えば図23のように構成することができる。即ち、図23は、楽曲検索システムの機能的構成例を示す機能ブロック図である。
ただし、図23の機能ブロック図とは、楽曲検索システムが本来有する可能性がある様々な機能のうちの、本発明が適用される機能、即ち、上述した検索操作処理実行機能を実現するための機能ブロック図である。即ち、かかる検索操作処理実行機能を幾つかの所定機能に区分し、区分された各所定機能をそれぞれ有する機能ブロックのみが図23には図示されている。換言すると、楽曲検索システムが有するその他の機能については、その図示は省略されている。
また、図23における各機能ブロックは、ハードウエア単体で構成してもよいし、ソフトウエア単体で構成してもよいし、或いはそれらの組合せで構成してもよい。また、複数の機能ブロックを1つの機能ブロックにまとめても構わないし、或いは、1つの機能ブロックをさらに小単位の機能ブロックに分割してもよい。換言すると、図23の楽曲検索システムは、各機能ブロックが有する各機能を有していれば、その実施の形態は特に限定されず、様々な形態を取ることが可能である。
さらに、本明細書において、システムとは、複数の装置または回路等の複数の部分により構成される装置または回路等全体を表すものである。即ち、図23の楽曲検索システムは、1台の装置で構成してもよいし、複数台の装置で構成してもよい。
図23の例では、楽曲検索システムは、操作部101乃至楽曲DB111を含むように構成されている。
操作部101は、ユーザによる上述した各種操作、即ち、検索軸変更操作(図17のステップS3参照)、絞り込み軸選択操作(ステップS5参照)、楽曲選択操作(ステップS7参照)、範囲指定操作(ステップS9参照)、再生操作(ステップS11参照)等を受け付け、その操作内容をマップ提示部105に通知する。
表示部102は、マップ等の楽曲検索を支援する各種支援情報をユーザに提示すべく、それらの支援情報を画像として表示する。
メタデータDB(Data Base)103には、各楽曲の各メタデータが記録されている。即ち、各検索軸のそれぞれに対応する各メタデータが、各楽曲毎にメタデータDB103に格納されている。
検索軸使用頻度保持部104には、各検索軸の使用頻度が保持されている。
マップ提示部105は、図17のステップS1の処理として、検索軸使用頻度保持部104の内容に基づいて、使用頻度の最も高い2つの検索軸を認識し、その2つの検索軸をX軸とY軸とする検索空間を構築する。マップ提示部105は、メタデータDB103の格納内容に基づいて、各楽曲を検索空間にマッピングしていくことで、マップを作成する。そして、マップ提示部105は、マップを表示部102に表示させることで、そのマップをユーザに提示する。
その後、例えばユーザが検索軸変更操作(図17のステップS3参照)を行うと、マップ提示部105は、検索軸変更操作処理(図17のステップS4,図18のフローチャート参照)を実行する。即ち、マップ提示部105は、X軸またはY軸をユーザの指定した検索軸(変更対象検索軸)に書き換えたマップを表示部102に表示させることで、そのマップをユーザに提示する。また、マップ提示部105は、検索軸使用頻度保持部104の内容のうち、変更対象検索軸の使用頻度を更新する。
マップ提示部105は、ユーザが範囲指定操作(図17のステップS9参照)を行うと、範囲指定操作/拡大操作処理(図17のステップS10、図21のフローチャート参照)の実行を制御する。
例えば、マップ提示部105は、現在選択中の楽曲(指定範囲内にマッピングされている楽曲)を絞り込み軸提示部106と、サビ再生部107に通知する。また、マップ提示部105は、指定範囲を拡大したマップを表示部102に表示させ、その拡大率に応じて、楽曲に関するより多くの詳細情報(付帯情報)を表示部102に表示させることで、拡大表示されたマップや各種付帯情報をユーザに提示する。即ち、マップ提示部105は、図21のステップS81,82の処理を実行する。なお、ステップS83乃至S86の処理については、後述する絞り込み軸提示部106によって実行される。
マップ提示部105は、ユーザが再生操作(図17のステップS11参照)を行うと、現在選択中の楽曲(指定範囲内にマッピングされている楽曲)をプレイリスト生成部108に通知する。これにより、後述するプレイリスト生成部108や楽曲再生部110により、図17のステップS12の処理、即ち、図22の再生操作処理が実行される。
マップ提示部105は、ユーザが絞り込み軸選択操作(図17のステップS5参照)を行うと、絞り込み軸選択操作処理(図17のステップS6,図19のフローチャート参照)を実行する。即ち、マップ提示部105は、置換対象軸をユーザの指定した絞り込み軸に書き換えたマップを表示部102に表示させることで、そのマップをユーザに提示する。また、マップ提示部105は、検索軸使用頻度保持部104の内容のうち、絞り込み軸の使用頻度を更新する。
なお、置換対象軸については、後述する図24のエントロピー/分散演算部151によって、図21のステップS83の処理が実行されることで決定される。
絞り込み軸提示部106は、上述したように、図21の範囲指定操作/拡大操作処理のうちのステップS83乃至S86の処理を実行する。
このため、絞り込み軸提示部106は、例えば、図24に示されるように、エントロピー/分散演算部151、使用頻度掛け合わせ部152、および、スコア上位検索軸抽出部153を含むように構成されている。
エントロピー/分散演算部151は、ステップS83の処理を実行する。即ち、エントロピー/分散演算部151は、X軸とY軸としてそれぞれ使用されている2つの検索軸について、マップ提示部105から通知された現在選択中の楽曲の分散Sを、メタデータDB103の内容に基づいて演算する。なお、ここでいう分散Sには、検索軸に対応するメタデータの種類によっては、エントロピーH(X)も適宜含まれる。そして、エントロピー/分散演算部151は、分散Sが小さい方の検索軸を置換対象軸として決定する。
また、エントロピー/分散演算部151は、ステップS84の処理を実行する。即ち、エントロピー/分散演算部151は、使用中以外の検索軸に対する現在選択中の楽曲の分散Sを、メタデータDB103の内容に基づいて演算する。なお、ここでいう分散Sには、検索軸に対応するメタデータの種類によっては、エントロピーH(X)も適宜含まれる。
使用頻度掛け合わせ部152は、ステップS85の処理を実行する。即ち、使用頻度掛け合わせ部152は、使用中以外の検索軸のそれぞれについて、分散Sに、その検索軸の使用頻度、残す検索軸との組合わせの使用頻度、置換対象軸としての使用頻度、および、残す検索軸との相関の低さiCorrelを掛け合わせることで、スコアを演算する。なお、各使用頻度については、検索軸使用頻度保持部104の内容が参照される。
スコア上位検索軸抽出部153は、ステップS86の処理を実行する。即ち、スコア上位検索軸抽出部153は、スコアの高い数個の検索軸を絞り込み軸候補として決定して、それらの絞り込み軸候補のリストを表示部102に表示させることで、絞り込み軸候補をユーザに提示する。
図23に戻り、サビ再生部107は、マップ提示部105から現在選択中の楽曲の通知を受けると、現在選択中の楽曲のサビ部分を連続再生する。即ち、サビ再生部107は、図17のステップS8の楽曲選択操作処理(図20のフローチャート参照)を実行する。
プレイリスト生成部108は、マップ提示部105から現在選択中の楽曲の通知を受けると、現在選択中の楽曲を含むプレイリストを生成し、プレイリスト保持部109に保持させる。楽曲再生部110は、プレイリスト保持部109に保持されたプレイリストに従って、各楽曲を再生する。この再生対象の楽曲(データ)は、楽曲DB111に格納されている。即ち、図17のステップS12の再生操作処理(図22のフローチャート参照)を実行する。
以上、図1乃至図24を参照して、本発明が適用される情報処理装置の一実施の形態である楽曲検索システムについて説明してきた。
かかる楽曲検索システムを適用することで、ユーザの簡便な操作のみによって、現在選択中の楽曲の詳細情報が表示されたり、サビの連続再生が行われるようになるので、ユーザは、現在選択中の楽曲の範囲(どのような特徴を持った集合体であるのか等)を的確に把握することが可能になる。
また、ユーザは、絞り込み検索を行うべく、絞り込み軸を簡単に選択できるようになり、その結果、より簡単に、すばやく目的の楽曲を探すことが可能になる。
ところで、上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
図25は、上述した一連の処理、例えば図17の検索操作処理の少なくとも一部をプログラムにより実行するパーソナルコンピュータの構成の例を示すブロック図である。即ち、図23の楽曲検索システムの全部または一部分、例えば幾つかの機能ブロックを、図25のように構成することもできる。
図25において、CPU(Central Processing Unit)201は、ROM(Read Only Memory)202、または記憶部208に記憶されているプログラムに従って各種の処理を実行する。RAM(Random Access Memory)203には、CPU201が実行するプログラムやデータなどが適宜記憶される。これらのCPU201、ROM202、およびRAM203は、バス204により相互に接続されている。
CPU201にはまた、バス204を介して入出力インタフェース205が接続されている。入出力インタフェース205には、キーボード、マウス、マイクロホンなどよりなる入力部206、ディスプレイ、スピーカなどよりなる出力部207が接続されている。CPU201は、入力部206から入力される指令に対応して各種の処理を実行する。そして、CPU201は、処理の結果を出力部207に出力する。
入出力インタフェース205に接続されている記憶部208は、例えばハードディスクからなり、CPU201が実行するプログラムや各種のデータを記憶する。通信部209は、インターネットやローカルエリアネットワークなどのネットワークを介して外部の装置と通信する。
また、通信部209を介してプログラムを取得し、記憶部208に記憶してもよい。
入出力インタフェース205に接続されているドライブ210は、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア211が装着されたとき、それらを駆動し、そこに記録されているプログラムやデータなどを取得する。取得されたプログラムやデータは、必要に応じて記憶部208に転送され、記憶される。
コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを格納するプログラム記録媒体は、図25に示されるように、磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)を含む)、光磁気ディスク、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア211、または、プログラムが一時的もしくは永続的に格納されるROM202や、記憶部208を構成するハードディスクなどにより構成される。プログラム記録媒体へのプログラムの格納は、必要に応じてルータ、モデムなどのインタフェースである通信部209を介して、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の通信媒体を利用して行われる。
なお、本明細書において、プログラム記録媒体に格納されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
101 操作部, 102 表示部, 103 メタデータDB, 104 検索軸使用頻度保持部, 105 マップ提示部, 106 絞り込み軸提示部, 107 サビ再生部, 108 プレイリスト生成部, 109 プレイリスト保持部, 110 楽曲再生部, 111 楽曲DB, 151 エントロピー/分散演算部, 152 使用頻度掛け合わせ部, 153 スコア上位検索軸抽出部