CRAPHTOが提供する超高精細画像WEBビューワー
WEB上で数億画素もの大容量画像を簡単に閲覧することができるCRAPHTOの超高精細画像ビューワー、その仕組みや仕様について説明いたします。
別稿(CRAPHTOが提供する「超高精細WEBカタログ」とは)にて解説していますが、詳しい仕様などについても補足させていただきます。
WEBサイトに写真を掲載する場合、全体の読み込みスピードを考慮して大きな画像を載せることはありません。スマートフォンの画面もPCモニター並みに高画素化していますが、長辺で1000ピクセルもあれば画像として十分な役割を果たします。このブログも1200×800ピクセル(約100万画素)の写真が使われていて1枚のサイズは200KB以下、ストレスなく読み込むことができます。
しかしCRAPHTOで扱う画像はサイズが数億画素〜最大40億画素となり、そのデータサイズはギガバイト級に及ぶことがあります。そのような画像は大きすぎて一般の端末では開くことができませんし、そもそもブラウザの仕様上表示することが不可能です。そこで活躍するのが超高精細画像WEBビューワーです。
ビューワーの機能をわかりやすく表示したのがこちらの銀河の画像です。
この画像は欧州の天文台が赤外線望遠鏡を使って撮影したもので、数千枚の画像を合成して作成されています。
CRAPHTOで画像を圧縮、編集、約30億画素(65000×48000ピクセル)、1GBというデータサイズにしてサーバーにアップロードしています。それを超高精細画像WEBビューワーを使いスマホの画面でも閲覧することを可能にしています。
銀河系を捉えた画像ですが、中心部をズームアップすると星が密集しているのがわかります。引いてみた場合と桁違いの星の量ですが、1枚の画像全体に数千万個という星が写っているのです。
30億画素という非常に大きなサイズにも関わらず、自由自在にズームイン、ズームアウトが可能です。画像読み込みが遅滞なくシームレスに行われるのはどのような仕組みになっているのでしょうか。
実は幾層ものタイルに切り分けて、レイヤーごとにサーバーに画像を格納、モニターに映し出されたところだけ読み込んでくるというシステムになっています。
例えばFullHD(1920×1080)、約200万画素の画像サイズは1MB程度、この程度であれば問題なくすぐに読み込むことができます。モニターに映し出すことのできる最大サイズは固定されていますから、仮に全体のデータが1GB(1000MB)あったとしても、表示サイズに応じたデータのみ読み込んで展開すれば良いだけなのです。
さらに画像を左右上下に振って動かした際にも一瞬で画像表示されて、シームレスに閲覧することができます。これは1画面で表示される200万画素がさらに64分割(8×8枚のタイル)されて、1つのタイルあたり3万画素、16KBという非常に軽いサイズに切り分けられています。16KBという軽いサイズのタイル画像の表示は一瞬ですので、新しい画面が切り替わった際にも一瞬で表示が可能になるのです。
GoogleMapと同じ仕組みで地球全体の膨大な地図データはサーバー上にありますが、拡大したい部分だけ読み込んでくる仕組みです。
アップロードに使われる画像は汎用画像フォーマットのJPEGとなります。JPEGはその規格上65,535×65,535ピクセル(42億画素)が最大となります。
65000ピクセルあれば、大きな繊維製品でも糸一本一本が識別できるレベルになります。
こちらは長さ3m程度の古裂の写真ですが、複数分割撮影して1枚の写真に合成することで解像度を上げ、長辺が65000ピクセル近いもので、12億画素程度のサイズにしています。
これ以上大きな画像も技術的には生成が可能ですが、サーバーの処理能力、ハンドリングの問題からWEBカタログとしては運用しておりません。必要な場合は別途ご相談いただければ、用途に合わせて特別に調整することは可能です。
また、管理画面をお渡しすることも可能で、ご自分で撮影いただいた画像を投稿することもできます。システム使用権の外販もいたしますので、大容量画像をシームレスに閲覧するシステムをお求めの方は是非お問い合わせください。
以上、CRAPHTOが提供する超高精細画像WEBビューワーを解説いたしました。