自作カメラもいいものだ
即興で作った自作カメラだが、意外と街に馴染んでいた。右手で持って、背面の液晶を見ながら人差し指でシャッターを押せれば、それは立派なカメラなのである。
デジタル写真は、JPEGという規格で圧縮されている。圧縮率を高めれば高めるほど、当然ながら画質は悪くなっていく。とはいえ、普段ネットなどで見ている画像は、画質が悪くなりすぎないよう、ほどほどの圧縮率に抑えられている。
そのリミッタを外したとき、真の圧縮画像が姿をあらわすのだ。見せてもらおうじゃないか、JPEG圧縮の限界とやらを。
JPEGという画像圧縮の規格がある。人間の目には感じにくい情報を削ることで、画質をほとんど変えずにファイル容量を小さくする技術である。
当然ながら、画質と容量はトレードオフの関係にある。高画質を維持すればするほど容量は減らないし、逆に画質劣化を許容すれば、大幅に容量を減らすことができる。
一般に圧縮率を高めるとノイズ(ブロックノイズやモスキートノイズ)が目立つようになる。文字で表現すると「ガビガビ」で「イガイガ」な写真ができあがる。見た目にも汚くなるので、ここまで圧縮する人はあまりいないだろう。
だが、しかし! この程度の圧縮なんて生ぬるい。実に生ぬるいのだ。
さらに圧縮しようとすると、「画質が悪くなりすぎるわりに、容量削減の効果が薄い」という領域に達する。要はまだ圧縮しようと思えばできるけれど、あんまりやる意味がないので、バランスを取ってこの程度でやめているのである。
でも気になる。限界まで圧縮すると、どんな画像が出現するのか。
普通のソフトではそんな設定にはできないので、何とか限界まで圧縮できる方法を探ってみた。……とその前に、まずはJPEGの画質を決めるパラメータについて少し理解を深めておきたい。
JPEGの画質は、パラメータをいじって調整できる。例えば、ほとんどのレタッチソフトでは、画像を保存するときに画質設定のダイアログが出るだろう。
この設定を変えると圧縮率が変わるのだけど、もう少し具体的に言うと「量子化テーブル」という圧縮率を決めるパラメータが変わっている。
量子化テーブルには計64個のパラメータがあり、それぞれに1~255の値が入っている。ざっくり言うと、この値が小さいほど画質が良く(=圧縮率が低く)、値が大きいほど画質が悪く(=圧縮率が高く)なる。
なんで64個もあるのか、というのを説明するとややこしくなるので、ここでは「そんなもんだ」ということでOKである。なんとなくグラフの「山が低ければ高画質」、逆に「山が高ければ低画質」というのを覚えておいて欲しい。
山が険しければ険しいほど、登るのに体力を消耗して画質が劣化する、というのを頭の中でイメージすればいいかも。
実際に「Photoshop」で画質設定を変えると、この量子化テーブルが変化している。確認してみると……
山が高い最低画質の量子化テーブルを使うと、先にお見せしたような「ガビガビ」の画像になる。
でもグラフをよく見て欲しい。縦軸の目盛りが100までしかないことから分かるように、取り得る値が1~255までとは言っても、実際は100未満の値しか使われていない。
そういうことなのだ。つまり量子化テーブルの山を高くするほど画質は悪く、圧縮率は高くなるのだが、現実的に使える値はこの程度までなのである。
「JPEGはまだ本気を出していない」という意味が分かってもらえただろうか。一般に画質が悪いと言われている圧縮率であっても、パラメータが取り得る値としては十分な余裕があるのだ。
これが分かってくると、「じゃあ量子化テーブルの山をもっともっと高くすると、どんな画質になるのか?」という疑問がわいてくるのも必然であろう。登山家が山頂を目指すように、私の興味も高い山(量子化テーブル)へと向かっていった。
実用に耐えなくてもいい。JPEGにはまだまだ圧縮の余地があるはずだ。がんばれがんばれ。そういう気持ちなのである。
パラメータにはまだまだ余裕があると言っても、そんな圧縮ができるソフトなんて存在しない。先に紹介した「Photoshop」の最低画質ですら、かなり攻めた設定なのである。
「もうJPEG圧縮ソフトを自作するしかないかなぁ」と考えていた矢先、ラズパイ(Raspberry Pi)を使えばできることに気が付いた。というより別のことをしているときに偶然発見した。思わずアルキメデスよろしく「エウレカ!」と叫びたくなってしまった。
(詳しい方に向けて書くと、PicameraのAPI ”capture”の引数で、”quality=1”にするとできます)
理論的には、明るさ成分(輝度)は8x8ピクセル、色成分(色差)は16x16ピクセル単位でほぼ塗り潰されてしまうため、パッと見た感じはドット絵である。色ズレも起きていて、これはこれで味わい深い。
でも薄目でみると、それなりに元の雰囲気を残している。不思議な写真である。
いままでの山とは比べものにならない高さだ。エベレストともちょっと違う。全体が浮き上がっているため、天空の城みたいな雰囲気になっている。
JPEGの規格上、これ以上は圧縮しようがないという限界値である。さすがに画質は見るに耐えないが、期せずして謎のポップさが露呈している。何かしらのフィルタ効果をかけたような見た目であるが、断じてそうではない。ただ限界までJPEG圧縮しただけである。
このカメラをたずさえて、旅に出てみることにした。
という感じだったのである。途中で何やらさっぱり分からない画像が混じっているし、やたらサウンドノベルゲームっぽくなってしまったが、JPEGの圧縮率がMAXなので仕方ない。心の目で見るんだ。
最低画質(最高圧縮率)の写真を見ると、とても実用には耐えない画質であることが分かる。「Photoshop」が対応していないのも納得である。
逆にこれができてしまうラズパイ(Picamera)は、一体どうしてしまったのだろう。設定できるように実装した作者の方は、こんな風に誰かが気付いて使かってくれるのを期待していたのかもしれない。もしそうだったら大変おもしろい。
ちなみにファイル容量はというと、掲載してある640x480サイズの場合、通常のJPEG写真の半分以下になった(解像度の高い写真になると、さらに効果が出るはず)。記事中に写真をいっぱい載せているけれど、いわゆる「ギガ」にはやさしい。意外とウェブ向きかもしれない、と一瞬思ったが、たぶん違うな。
即興で作った自作カメラだが、意外と街に馴染んでいた。右手で持って、背面の液晶を見ながら人差し指でシャッターを押せれば、それは立派なカメラなのである。
| ▽デイリーポータルZトップへ | ||
| ▲デイリーポータルZトップへ |
写真を限界までJPEG圧縮すると見えてくる世界 (斎藤公輔(NEKOPLA)) (12.10 16:00)
どの国からも承認されていない国家「アジャリア」に行く (Satoru) (12.10 11:00)
飲み会に代わるなにかを見つけ出す (大北栄人) (12.10 11:00)
恐竜公園がとてもいい (北向ハナウタ) (12.09 16:00)
冬将軍がサボりまくって12月が過ぎていきそうです~半月天気予報 (増田雅昭) (12.09 16:00)
ドリンクバーの紅茶を美味しく淹れる「ファミレス茶道」を考える (玉置標本) (12.09 11:00)
三葉虫に寿司を運ばせたい (こーだい) (12.09 11:00)
おしゃれ店情報vs安政の大獄トーク~ストへぇ松陰神社後編のみどころ (プープーテレビ) (12.08 16:00)
11月の記事ベスト5発表!~新幹線ディナー・神は細部に宿る (デイリーポータルZ編集部) (12.08 11:00)
サイバーマンデーなので読者の「買ってよかったもの」を紹介します (デイリーポータルZ編集部) (12.08 11:00)
今週の記事まるっと3行まとめ(11/28~12/4) (デイリーポータルZ編集部) (12.07 16:00)
自分がお題になっていた「ボケて」のボケを実践する (ヨシダプロ) (12.07 11:00)
土曜のお便り 〜効果線が臭い (トルー) (12.07 11:00)
アルティメットキャッサバ・紅茶のしっぽ~自由ポータルZ (デイリーポータルZ編集部) (12.06 16:00)
買い物でストレス発散したい! 意外なものを買ってみた記事まとめ (デイリーポータルZ編集部) (12.06 16:00)
沖縄のおじさんがDIYしたツリーハウスがキラキラすぎる (miooon(DEEokinawa)) (12.06 11:00)
斎藤公輔さんインタビュー~散歩・撮影・整理 (デイリーポータルZ編集部) (12.06 11:00)
さくらいさんインタビュー~株主ダイエットでわかった最高のダイエットグッズ (デイリーポータルZ編集部) (12.06 11:00)
トリックないアート (林雄司) (12.05 16:00)
LINE@で人力応答します (橋田玲子) (12.05 15:30)
和歌山県のおすすめ教えてください!~投稿頼りの旅in和歌山~ (安藤昌教) (12.05 11:00)
住んでみた東京の物件がいろいろあって面白かった話 (ネッシーあやこ) (12.05 11:00)
「慇懃無礼」を知らない?……今年の新語2019結果速報 (西村まさゆき) (12.04 16:00)
牛乳は、牛乳1:水2で薄めて使うとちょうどいい (松本圭司) (12.04 11:00)
電気を使わない「機械式計算機」がメカメカしくて格好よすぎた! (北村ヂン) (12.04 11:00)
飛行機に乗らなくても空港は楽しい 船乗り場はどうか (トルー) (12.03 16:00)
料理のプロに、原材料名だけを見せて作ってもらいました (安藤昌教) (12.03 11:00)
対馬の伝統養蜂がおもしろい 〜蜂洞とニホンミツバチ〜 (平坂 寛) (12.03 11:00)
レゴブロックでブロックチェーンを説明する (井上マサキ) (12.02 16:00)
さよなら離乳食カレー (パリッコ) (12.02 11:00)
広告募集 広告募集
今日のみどころ
[12/10] 記事を書いていると食べ物や街角の設置物などいろんなものに感情移入する機会があります。壊れたパイロンがかわいそうとか、そういうやつ。今日はその急先鋒たるライター斎藤さんの記事を16時に公開。かつての記事に引き続き、JPEGに感情移入しまくりです。画像フォーマットに!(石川)
| 特集 | 2019年: | 1月 | 2月 | 3月 | 4月 | 5月 | 6月 | 7月 | 8月 | 9月 | 10月 | 11月 | 12月 |
| 2018年: | 1月 | 2月 | 3月 | 4月 | 5月 | 6月 | 7月 | 8月 | 9月 | 10月 | 11月 | 12月 | |
| 2017年: | 1月 | 2月 | 3月 | 4月 | 5月 | 6月 | 7月 | 8月 | 9月 | 10月 | 11月 | 12月 | |
| 2016年: | 1月 | 2月 | 3月 | 4月 | 5月 | 6月 | 7月 | 8月 | 9月 | 10月 | 11月 | 12月 | |
| 2015年: | 1月 | 2月 | 3月 | 4月 | 5月 | 6月 | 7月 | 8月 | 9月 | 10月 | 11月 | 12月 | |
| 2014年: | 1月 | 2月 | 3月 | 4月 | 5月 | 6月 | 7月 | 8月 | 9月 | 10月 | 11月 | 12月 | |
| 2013年: | 1月 | 2月 | 3月 | 4月 | 5月 | 6月 | 7月 | 8月 | 9月 | 10月 | 11月 | 12月 | |
| 2012年: | 1月 | 2月 | 3月 | 4月 | 5月 | 6月 | 7月 | 8月 | 9月 | 10月 | 11月 | 12月 | |
| 2011年: | 1月|2月|3月|4月|5月|6月|7月|8月|9月|10月|11月|12月 | |
| 2010年: | 1月|2月|3月|4月|5月|6月|7月|8月|9月|10月|11月|12月 | |
| 2009年: | 1月|2月|3月|4月|5月|6月|7月|8月|9月|10月|11月|12月 | |
| 2008年: | 1月|2月|3月|4月|5月|6月|7月|8月|9月|10月|11月|12月 | |
| 2007年: | 1月|2月|3月|4月|5月|6月|7月|8月|9月|10月|11月|12月 | |
2006年: | 1月|2月|3月|4月|5月|6月|7月|8月|9月|10月|11月|12月 | |
2005年: | 1月|2月|3月|4月|5月|6月|7月|8月|9月|10月|11月|12月 | |
| 2004年: | 1月|2月|3月|4月|5月|6月|7月|8月|9月|10月|11月|12月 | |
| 2003年: | 1月|2月|3月|4月|5月|6月|7月|8月|9月|10月|11月|12月 | |
2002年: | 9月以前のふろく|10月:狩 |11月:冬 |12月:夜 | |
| コネタ | 2006年: | 1月|2月|3月 |
| 1月|2月|3月|4月|5月|6月|7月|8月|9月|10月|11月|12月 | ||
2004年: | 7月|8月|9月|10月|11月|12月 | |
※「コネタ」は2006年4月から「特集」と同じ扱いになりました。 | ||
写真を限界までJPEG圧縮すると見えてくる世界 (斎藤公輔(NEKOPLA)) (12.10 16:00)
どの国からも承認されていない国家「アジャリア」に行く (Satoru) (12.10 11:00)
飲み会に代わるなにかを見つけ出す (大北栄人) (12.10 11:00)
恐竜公園がとてもいい (北向ハナウタ) (12.09 16:00)
冬将軍がサボりまくって12月が過ぎていきそうです~半月天気予報 (増田雅昭) (12.09 16:00)
ドリンクバーの紅茶を美味しく淹れる「ファミレス茶道」を考える (玉置標本) (12.09 11:00)
三葉虫に寿司を運ばせたい (こーだい) (12.09 11:00)
おしゃれ店情報vs安政の大獄トーク~ストへぇ松陰神社後編のみどころ (プープーテレビ) (12.08 16:00)
11月の記事ベスト5発表!~新幹線ディナー・神は細部に宿る (デイリーポータルZ編集部) (12.08 11:00)
サイバーマンデーなので読者の「買ってよかったもの」を紹介します (デイリーポータルZ編集部) (12.08 11:00)
今週の記事まるっと3行まとめ(11/28~12/4) (デイリーポータルZ編集部) (12.07 16:00)
自分がお題になっていた「ボケて」のボケを実践する (ヨシダプロ) (12.07 11:00)
土曜のお便り 〜効果線が臭い (トルー) (12.07 11:00)
アルティメットキャッサバ・紅茶のしっぽ~自由ポータルZ (デイリーポータルZ編集部) (12.06 16:00)
買い物でストレス発散したい! 意外なものを買ってみた記事まとめ (デイリーポータルZ編集部) (12.06 16:00)
沖縄のおじさんがDIYしたツリーハウスがキラキラすぎる (miooon(DEEokinawa)) (12.06 11:00)
斎藤公輔さんインタビュー~散歩・撮影・整理 (デイリーポータルZ編集部) (12.06 11:00)
さくらいさんインタビュー~株主ダイエットでわかった最高のダイエットグッズ (デイリーポータルZ編集部) (12.06 11:00)
トリックないアート (林雄司) (12.05 16:00)
LINE@で人力応答します (橋田玲子) (12.05 15:30)
和歌山県のおすすめ教えてください!~投稿頼りの旅in和歌山~ (安藤昌教) (12.05 11:00)
住んでみた東京の物件がいろいろあって面白かった話 (ネッシーあやこ) (12.05 11:00)
「慇懃無礼」を知らない?……今年の新語2019結果速報 (西村まさゆき) (12.04 16:00)
牛乳は、牛乳1:水2で薄めて使うとちょうどいい (松本圭司) (12.04 11:00)
電気を使わない「機械式計算機」がメカメカしくて格好よすぎた! (北村ヂン) (12.04 11:00)
飛行機に乗らなくても空港は楽しい 船乗り場はどうか (トルー) (12.03 16:00)
料理のプロに、原材料名だけを見せて作ってもらいました (安藤昌教) (12.03 11:00)
対馬の伝統養蜂がおもしろい 〜蜂洞とニホンミツバチ〜 (平坂 寛) (12.03 11:00)
レゴブロックでブロックチェーンを説明する (井上マサキ) (12.02 16:00)
さよなら離乳食カレー (パリッコ) (12.02 11:00)
広告募集 広告募集