(57)【特許請求の範囲】
【請求項１】
コンピュータにより実施される方法であって、
クライアント装置において、ウェブページに関連する一又は複数の符号化画像をダウンロードするステップと、
前記クライアント装置において、前記一又は複数の符号化画像をバッファするステップと、
前記一又は複数の符号化画像の復号の優先度に関連する利用タイプを確認するステップと、
ある利用タイプの一又は複数の符号化画像を要求に応じて復号するステップとを有し、一利用タイプは＜ｃａｎｖａｓ＞要素に関連する、方法。
【請求項２】
前記ダウンロードするステップの後に、前記一又は複数の符号化画像に関連するメタデータを復号する、前記メタデータは前記一又は複数の符号化画像に関連するサイズ情報を含む、復号するステップをさらに有する、
請求項１に記載のコンピュータにより実施される方法。
【請求項３】
一利用タイプは初期化動作に関連する、
請求項１に記載のコンピュータにより実施される方法。
【請求項４】
一利用タイプはサムネイル画像の利用に関連する、
請求項１に記載のコンピュータにより実施される方法。
【請求項５】
一利用タイプは、関連する符号化画像が現在表示されていなくても、復号画像にアクセスする必要がある動作に関連する、
請求項１に記載のコンピュータにより実施される方法。
【請求項６】
一利用タイプは、関連する符号化画像が現在表示されていなくても、復号画像にアクセスする必要がある動作に関連する、前記一利用タイプは印刷動作を含む、請求項１に記載のコンピュータにより実施される方法。
【請求項７】
一利用タイプは符号化画像に適用されるフィルタ動作に関連する、
請求項１に記載のコンピュータにより実施される方法。
【請求項８】
コンピュータに、
ウェブページに関連する一又は複数の符号化画像をダウンロードするステップと、
前記一又は複数の符号化画像をバッファするステップと、
前記一又は複数の符号化画像の少なくとも一つの復号の優先度に関連する利用タイプを確認するステップと、
前記一又は複数の符号化画像の少なくとも他の一つに関連する利用の尤度を確認するステップと、
ある利用タイプの一又は複数の符号化画像の前記少なくとも一つを要求に応じて復号するステップと、
前記尤度に基づき、前記一又は複数の符号化画像の少なくとも他の一つを要求に応じて同期して又は非同期で復号するステップと
を実行させるコンピュータプログラム。
【請求項９】
一利用タイプは、関連する符号化画像が現在表示されていなくても、復号画像にアクセスする必要がある動作に関連する、
請求項８に記載のコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像の復号に関する。
【背景技術】
【０００２】
一般的に、画像を含むウェブページをウェブブラウザが要求した場合、その画像はダウンロードされ、ダウンロードされた時に復号される。画像の復号には、その画像の、コンピュータシステムのビデオハードウェアを用いてレンダリングできる形式への展開（expanding）や解凍が必要である。画像の解凍によりＣＰＵのリソースとオーバーヘッドが消費される。また、画像の解凍によりメモリリソースも消費され得る。
【０００３】
しかし、状況によっては、参照画像はレンダリングされなかったり、視聴されないこともある。こうした場合、画像の復号により、ＣＰＵリソース、オーバーヘッド、及びメモリが無駄になってしまう。
【発明の概要】
【課題を解決するための手段】
【０００４】
本欄では、発明の詳細な説明で詳しく説明するコンセプトの一部を選んで、簡単に説明する。本欄は、特許を請求する主題の重要な特徴や本質的な特徴を特定するものではなく、特許を請求する主題の範囲を限定するものでもない。
【０００５】
一又は複数の実施形態では、画像の復号を、経験則（heuristics）に基づき遅延させ、後で、その画像に関連する利用タイプ（use  type）又はその画像が利用される尤度に基づき、開始するフレームワークを提供する。例えば、利用履歴及び優先システムにより、現在レンダリングされている画像及び／又はレンダリングされそうな画像を、ダウンロードされたが利用されていない履歴を有する画像の前に復号することができる。したがって、画像のダウンロードを画像の復号とデカップリングすることにより、ＣＰＵリソースとメモリをより効率的に利用できる。
【図面の簡単な説明】
【０００６】
複数の図面にわたり同じ数字を用いて同じ機能を示した。
【図１】一又は複数の実施形態による、ここに説明する様々な原理を利用できる動作環境を示す図である。
【図２】一又は複数の実施形態による方法のステップを説明するフロー図である。
【図３】一又は複数の実施形態によるビューポートの一例を示す図である。
【図４】一又は複数の実施形態をインプリメントするのに利用できるシステムの一例を示す図である。
【発明を実施するための形態】
【０００７】
概要
一又は複数の実施形態では、画像の復号を、経験則（heuristics）に基づき遅延させ、後で、その画像に関連する利用タイプ（use  type）又はその画像が利用される尤度に基づき、開始するフレームワークを提供する。例えば、利用履歴及び優先システムにより、現在レンダリングされている画像及び／又はレンダリングされそうな画像を、ダウンロードされたが利用されていない履歴を有する画像の前に復号することができる。したがって、画像のダウンロードを画像の復号とデカップリングすることにより、ＣＰＵリソースとメモリをより効率的に利用できる。
【０００８】
以下の説明では、「動作環境」セクションを設け、一又は複数の実施形態で利用できる環境を説明する。その後、「画像復号器モジュール動作」セクションで、一又は複数の実施形態による画像復号器モジュールの動作を説明する。最後に、「システム例」セクションにおいて、一又は複数の実施形態による、利用可能なシステムの一例を説明する。
【０００９】
ここで、一又は複数の実施形態をインプリメントできる動作環境の一例を考える。
【００１０】
動作環境
図１は、一又は複数の実施形態による動作環境１００を示す。環境１００は計算装置１０２を含む。計算装置１０２は、一又は複数のプロセッサ１０４と、一又は複数のコンピュータ読み取り可能記憶媒体１０６と、コンピュータ読み取り可能媒体上にあってプロセッサにより実行可能な一又は複数のアプリケーション１０８とを有する。コンピュータ読み取り可能記憶媒体は、限定ではなく例として、計算装置に付随するすべての形式の揮発性及び不揮発性のメモリ及び／又は記憶媒体を含む。かかる媒体には、ＲＯＭ、ＲＡＭ、フラッシュメモリ、ハードディスク、リムーバブルメディアなどが含まれる。計算装置の具体例は図４を参照して説明する。
【００１１】
また、計算装置１０２は、ウェブブラウザ１１０の形式のソフトウェアアプリケーションを含む。任意の好適なウェブブラウザを用いることができる。その例は、本出願の譲受人その他から入手可能である。また、コンピュータ読み取り可能記憶媒体１０６は、上記の動作及び以下に説明する動作をする画像復号器モジュール１１１を含む。画像復号器モジュールは、ウェブブラウザ１１０に組み込むこともできるが、ウェブブラウザにより利用されるスタンドアロンコンポーネントであってもよい。
【００１２】
動作時、画像復号器モジュール１１１は、画像ダウンロードが画像復号からデカップリングされるフレームワークの一部を形成する。画像復号器モジュールは、ダウンロードされた画像をいつレンダリングのために効率的に復号するか、インテリジェントに確認（intelligently  ascertain）するように構成されている。少なくともある実施形態では、画像の復号を、画像復号器モジュール１１１により経験則（heuristics）に基づき遅延させ、後で、その画像に関連する利用タイプ（use  type）又はその画像が利用される尤度に基づき開始する。例えば、画像復号器モジュールは、利用履歴及び優先システムを用いて、現在レンダリングされている画像及び／又はレンダリングされそうな画像を、ダウンロードされたが利用されていない履歴を有する画像の前に復号することができる。したがって、画像のダウンロードを画像の復号とデカップリングすることにより、ＣＰＵリソースとメモリをより効率的に利用できる。
【００１３】
また、環境１００は、インターネットなどのネットワーク１１２と、コンテンツを送受信できる一又は複数のウェブサイト１１４とを含む。かかるコンテンツは、画像復号器モジュール１１１により処理される画像を含むウェブページを含む。
【００１４】
計算装置１０２は、限定ではなく例として、デスクトップコンピュータ、ポータブルコンピュータ、ネットブック、パーソナルデジタルアシスタント（ＰＤＡ）等のハンドヘルドコンピュータ、携帯電話などの、任意の好適な計算装置として実施できる。
【００１５】
動作環境の一例を説明したので、ここで一又は複数の実施形態による画像復号器モジュールの一例の動作を説明する。
【００１６】
画像復号器モジュールの動作
図２は、一又は複数の実施形態による画像復号器モジュール１１１（図１）の動作のある態様を示す。
【００１７】
ステップ２００において、一又は複数の符号化画像をダウンロードする。このステップは任意の好適な方法で実行してもよい。例えば、少なくともある実施形態では、ブラウザナビゲーションに応じて、好適に構成されたウェブブラウザにより画像をダウンロードできる。ステップ２０２において、ダウンロードされた画像に付随するメタデータを復号する。ダウンロードされた画像そのものでははく、その画像に付随するメタデータを復号することにより、画像復号に先立って、サイズ情報、透明度などの画像に付随する有用な情報を確認できる。例えば、メタデータから確認されるサイズ情報を用いて、画像復号に先立って、ページレイアウトを前処理できる。さらに、サイズ情報を用いて、ある画像の復号を遅延させるかどうか、確認することができる。例えば、あるサイズ閾値（例えば、２５６ｋＢ）より小さい画像は、ダウンロードしてすぐに復号できる。同様に、あるサイズ閾値より大きい画像は、後で何時復号されるか決定される。
【００１８】
ステップ２０４において、符号化画像の復号を遅延する場合、その符号化画像をバッファする。バッファされる画像には「低」、「普通」、「高」などの優先度を割り当てることができる。優先度は下記の処理により変更できる。
【００１９】
ステップ２０６において、画像に関連する利用タイプ、又はその画像の利用の尤度を確認する。
【００２０】
ステップ２０８において、他の計算をしつつ、利用タイプに応じて、符号化画像を要求に応じて非同期又は同期で復号する。このステップは、好適に構成されたウェブブラウザが復号キュー内で画像を前倒し処理（advance）するように、その画像の優先度を高くすることによって行っても良い。利用タイプの例は、下記の「利用タイプ例」セクションで説明する。
【００２１】
代替的又は追加的に、ステップ２１０において、符号化画像が利用されそうであれば、その符号化画像を要求に応じて非同期で又は同期して復号する。同様に、このステップは、好適に構成されたウェブブラウザが復号キュー内で画像を前倒し処理（advance）するように、その画像の優先度を高くすることによって行っても良い。この処理をどう行うかの例は、下記の「利用の尤度」セクションで説明する。
【００２２】
ここで、一又は複数の実施形態による利用タイプの例について考える。言うまでもなく、説明する利用タイプは単なる例であり、特許請求する主題をこれらの具体的な利用タイプに限定するものではない。そのため、特許請求する主題の精神と範囲から逸脱することなく、他の利用タイプを用いることができる。
【００２３】
利用タイプの例
一又は複数の実施形態では、画像に関連する利用タイプにより、その画像を、低優先度を付与して遅延復号できるか、高優先度を付与して画像の復号を要求に応じて実行するか、決定できる。
【００２４】
復号を要求に応じて行いユーザ体験を向上する一利用タイプは、いわゆる初期化動作（initialization  operation）に関連する。具体的に、画像が初期ビューに表示される場合、その画像の復号は要求に応じて行われ、及び／又は画像を漸進的にレンダリングできる。例えば、ユーザがまったく初めてあるページにナビゲートされ、そのページに関連する画像がまだ復号されていないと仮定する。この場合、最初のビューに表示されるべき画像を検出し、その画像が復号されるまで、ページのレンダリングは遅らされる。一又は複数の実施形態では、遅延閾値を例えば１００ｍｓと定めて、ページレンダリングをどのくらい遅らせるか制御するのに用いる。遅延のタイプとしては任意の好適なものを用いることができる。
【００２５】
復号を要求に応じて実行できる他の一利用タイプは、ユーザインターラクションに関連する。具体的に、あるシナリオでは、インターラクティブなフィードバックによりユーザ体験を向上できる。例えば、ユーザがウェブページに現れつつあるオブジェクト上にカーソルを重ねると、サムネイル画像が表示され、カーソルが重ねられたオブジェクトに関連する追加情報がユーザに提供される。例えば、デスクトップユーザインタフェースがその下部にタスクバーを有していてもよい。ある場合には、タスクバー中に表示されるオブジェクトが、カーソルをタスクバーオブジェクト上に重ねる「オンホバー」動作によりアクセスできる関連するサムネイル画像を有していてもよい。これらの場合には、サムネイル画像を正確に及び適時にレンダリングできるように、サムネイル画像に関連する画像を予め復号してもよい。
【００２６】
復号を要求に応じて実行できる他の一利用タイプは、画像が現在表示されていなくても、復号画像にアクセスする必要がある動作に関連する。かかる一動作は印刷動作である。具体的に、ウェブページを印刷する時、命令が生成され、プリンタに送信され、そのプリンタにそのウェブページの印刷ができるようにする。例えば、ユーザが１００頁の文書にナビゲートされ、その文書中の様々な画像に遅延復号が指定されると仮定する。ユーザが３頁から印刷動作を開始し、まだ視聴されていない９１頁に現れる様々な画像が復号されていないとき、印刷される文書はこれらの画像を含まない。こうした状況では、他の状況であっても、遅延復号を指定された画像は、文書がプリンタに送信される前に、要求に応じて復号できる。こうすることにより、その文書中に現れる画像が正確に印刷される。
【００２７】
復号を要求に応じて実行できる他の一利用タイプは、いわゆるフィルタ動作に関連する。具体的に、あるウェブブラウザにより、ウェブページの一部を選択し、又はクリップすることができ、選択された部分にビジュアル効果を適用することができる。例えば、ウェブページの一部を選択し、回転でき、それに透明フィルタをかけることができる。選択されたウェブページの部分が、復号されていない画像を含む場合、フィルタ動作は不完全であるか、又は場合によっては失敗する。こうした状況では、ウェブページの一部がフィルタ動作のために選択され、まだ復号されていない画像を含む場合、これらの画像は、フィルタ動作が適用される前に、要求に応じて同期して復号される。
【００２８】
復号を要求に応じて実行できる他の一利用タイプは、ＨＴＭＬ５の一部である＜ｃａｎｖａｓ＞要素に関連する。言うまでもなく、＜ｃａｎｖａｓ＞要素を用いてＪａｖａＳｃｒｉｐｔ（登録商標）などのスクリプトを用いてグラフィックスを描くことができる。例えば、グラフを描いたり、写真を合成したり、単純あるいは複雑なアニメーションを表示したりできる。一又は複数の実施形態では、＜ｃａｎｖａｓ＞要素に関して用いられる画像を、利用する前に同期して要求に応じて復号できる。
【００２９】
復号を要求に応じて実行できる利用タイプの例を説明したが、ここで一又は複数の実施形態による「利用の尤度」シナリオを検討する。
【００３０】
利用の尤度
一又は複数の実施形態では、画像復号器モジュール１１１（図１）は、遅延復号をすると指定された画像が利用されそうか確認する。利用されそうであれば、その画像を要求に応じて復号できる。これにより、例えば、画像をレンダリングする必要があるが、その画像がまだ復号されていないという状況の発生を減らすことができる。利用尤度の決定は、任意の好適な方法で行える。以下、例を挙げる。
【００３１】
一又は複数の実施形態では、画像の利用尤度は、現在のビューに対する画像の位置的近接性や論理的近接性を考慮して、確認できる。
【００３２】
一例として、図３の場合を考える。図３には、ウェブブラウザに関連するビューポート３００を示した。このビューポート内には、３つの画像３０２、３０４及び３０６がある。また、画像３０２、３０４及び３０６があるウェブページに関連するさらに別のコンテンツは、矢印３０８の方向にページング又は下向きスクロールをすることにより、又は矢印３１０の方向に横方向にスクロールをすることにより、見ることができる。一又は複数の実施形態では、まだ見えない画像がレンダリングされた画像に近接した位置にあり、ページングや下向きスクロールにより、又は横方向スクロール操作によりアクセスできる場合、そのまだ見えない画像をバックグラウンドで要求に応じて復号することができる。位置的近接性は任意の好適な方法で確認できる。例えば、ある実施形態では、まだ見えない画像は、一又は複数のページを進む又は戻る操作で見えるようになる場合、表示されている画像と位置的に近接していると考えられる。
【００３３】
論理的近接性は、見えない画像が、表示されている画像と関係を有し、表示された画像に関連してアクセスされそうか判断することにより確認できる。例えば、表示された画像と関連するスライドショーに含まれる見えない画像（unseen  image）は、そのスライドショーを視聴するユーザによりアクセスされる可能性が高い。代替的に又は追加的に、見えない画像が表示された画像を通して、又はそれを用いてアクセスできるように、画像がリンクされていてもよい。代替的に又は追加的に、論理的近接性は、ユーザが「エンド」キーを押すことにより、又は同様の「文書の終わり」操作をインプリメントすることにより、どの画像がアクセスされ得るか確認することにより、確認できる。
【００３４】
こうした状況では、他の計算を行いつつ、同期して又は非同期で要求に応じて画像を復号することにより、例えば、画像があってもまだ復号されていないウェブページの部分にユーザがページダウンする状況を減らす役に立つ。
【００３５】
一又は複数の実施形態では、画像の利用尤度は、個々の画像に関連する、その画像の利用頻度を記述する履歴を保持することにより確認できる。よって、より頻繁に利用又はレンダリングされる画像は要求に応じて復号され、それほど利用又はレンダリングされない画像は、遅延復号が指定される。例えば、ある画像は１０回ダウンロードされそのうち９回レンダリングされたことを示す履歴を有し、他の画像は１０回ダウンロードされそのうち３回レンダリングされたことを示す履歴を有する場合、最初の画像はより高い優先度を付与され、適切であれば、要求に応じて、同期して又は非同期で復号される。
【００３６】
一又は複数の実施形態では、画像の利用尤度を、画像に関して実行される動作のタイプにより確認できる。例えば、画像は、レンダリング又はアクセスの動作の一部であるとき、要求に応じて復号できる。これには、ある画像の復号優先度を高くして、すぐに復号されるようにすることが含まれる。
【００３７】
代替的に又は追加的に、一又は複数の実施形態では、決定された優先度及び／又は利用尤度に基づき、それをサポートする画像はプログレッシブレベルまで、及び画像を完全に復号するほどコストがかからない小さいサイズまで復号できる。また、利用可能であれば、ＧＰＵｍｉｐｍａｐサポートを用いて、レンダリング時に利用可能な／復号されたサイズを用いて画像をレンダリングしてもよい。
【００３８】
画像復号器モジュールの一例の動作を説明したので、ここで上記の実施形態をインプリメントするのに用いることができるシステムの一例を検討する。
【００３９】
システム例
図４は、上記の様々な実施形態をインプリメントするのに用いることができる計算装置４００の一例を示している。計算装置４００は、例えば、図１の計算装置１０２であっても、その他の好適な計算装置であってもよい。
【００４０】
計算装置４００は、一又は複数のプロセッサ又は処理部４０２と、一又は複数のメモリ及び／又は記憶コンポーネント４０４と、一又は複数の入出力（Ｉ／Ｏ）装置４０６と、及び様々なコンポーネント及び装置が互いに通信できるバス４０８とを含む。バス４０８は、メモリバス又はメモリコントローラ、ペリフェラルバス、アクセラレーテッドグラフィックスポート、及び様々なバスアーキテクチャを用いたプロセッサ又はローカルバスを含む複数タイプのバス構成のいずれでもよい。バス４０８は有線バス及び無線バスを含み得る。
【００４１】
メモリ／記憶コンポーネント４０４は、一又は複数のコンピュータ記憶媒体を表す。コンポーネント４０４は、（ＲＡＭ（random  access  memory）などの）揮発性媒体、及び／又は（ＲＯＭ（read  only  memory）、フラッシュメモリ、光ディスク、磁気ディスクなどの）不揮発性媒体を含み得る。コンポーネント４０４は、（ＲＡＭ、ＲＯＭ、固定ハードディスクドライブなどの）固定媒体、及び（フラッシュメモリドライブ、リムーバブルハードディスクドライブ、光ディスクなどの）リムーバブル媒体を含み得る。
【００４２】
一又は複数の入力力装置４０６により、ユーザは計算装置４００にコマンドと情報を入力でき、ユーザ及び／又は他のコンポーネントや装置に情報を提供できる。入力装置の例には、キーボード、カーソル制御装置（例えば、マウス）、マイクロホン、スキャナなどが含まれる。出力装置の例には、ディスプレイ装置（例えば、モニタやプロジェクタ）、スピーカ、プリンタ、ネットワークカードなどが含まれる。
【００４３】
ここでは、ソフトウェアやプログラムモジュールの一般的なコンテクストで、様々な技術を説明する。一般的に、ソフトウェアには、あるタスクを実行したり、ある抽象的データタイプをインプリメントするルーチン、プログラム、オブジェクト、コンポーネント、データ構造などが含まれる。これらのモジュールや技術のインプリメンテーションは、コンピュータ読み取り可能媒体に格納でき、又はコンピュータ読み取り可能媒体の形式で伝送できる。コンピュータ読み取り可能媒体は、計算装置によりアクセスできる任意の利用可能な媒体である。限定ではなく例として、コンピュータ読み取り可能媒体は「コンピュータ読み取り可能記憶媒体」を含む。
【００４４】
「コンピュータ読み取り可能記憶媒体」には、コンピュータ読み取り可能命令、データ構造、プログラムモジュールその他のデータなどの情報を記憶するための任意の方法や技術でインプリメントされた、揮発性および不揮発性、取り外し可能および取り外し不可能媒体を含む。コンピュータ読み取り可能記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリその他のメモリ技術、ＣＤ−ＲＯＭ、デジタルバーサタイルディスク（ＤＶＤ）その他の光ディスク記憶媒体、磁気カセット、磁気テープ、磁気ディスク記憶その他の磁気記憶デバイス、またはその他の、所望の情報の記憶に使える任意の媒体を含むが、これらに限定されない。
【００４５】
結論
上記の通り、画像の復号を、経験則（heuristics）に基づき遅延させ、後で、その画像に関連する利用タイプ（use  type）又はその画像が利用される尤度に基づき、開始するフレームワークを提供する。例えば、利用履歴及び優先システムにより、現在レンダリングされている画像及び／又はレンダリングされそうな画像を、ダウンロードされたが利用されていない履歴を有する画像の前に復号することができる。したがって、画像のダウンロードを画像の復号とデカップリングすることにより、ＣＰＵリソースとメモリをより効率的に利用できる。
【００４６】
本主題を個別の構造的特徴及び／又は方法動作を用いて説明したが、言うまでもなく、添付した特許請求の範囲に規定する主題は、上記の特定の特徴や動作には必ずしも限定されない。上記の特定の特徴や動作は、請求項を実施する形式例を開示するものである。
【図１】
0006038812.tif 000002
【図２】
0006038812.tif 000003
【図３】
0006038812.tif 000004
【図４】
0006038812.tif 000005