霊はスーパーハッカー? 霊はスーパーハッカー?


夏と言えば肝試しや怪談の季節ですね。昭和の時代には心霊写真なんてのが流行りましたがデジカメの時代になってから殆ど話題にならなくなった気がします。実際に霊が存在するか、霊が不思議な力によって写真に姿を書き込む事が可能かはともかくデジタル写真の場合はその仕組みからして不可能だと思います。


ここで不可能と言うのはあくまで霊が何らかの不思議な力(念の力?)を使ってデジタルデータに任意の画像を書き込むのは不可能と言う意味です。フィルム式カメラに於いてどうなのかは肯定も否定もしません。

デジタルデータの仕組みを知ってる人なら説明するまでも無いですね。私の所を見に来る人ではAuO2氏、notteさん、林道茶会首席参謀氏ならここまで読んだ時点で既に何の話なのか理解してます。

デジタルデータの仕組みを知らない人は覚悟して読んで下さい(笑)。読んでて意味が解らなくなったらそれが原理的に不可能だと言う理由です。つまりデジタル画像を書き換えるにはこれだけ複雑な事を理解して実行しないといけないわけです。

先づ、デジタル画像と言うものは全て数値化されたものだと言う事を認識して下さい。一番単純なのは圧縮されてないBMP形式でこれは各ドットの値をズラッと並べただけです。例えば茶色一色のBMP画像をダンプ(コンピュータが処理する数値を直接表示)すると以下の樣になります。





見ての通り004080と言う数字が連続してますが、この004080がそのドットが茶色である事を示します。

色が黒の場合その値は000000なのでダンプするとひたすら0が並びます。下の赤黒の画像との比較ですが黒の部分だけなら数値は全く同じです。



データ先頭


データ末尾


この黒の一部を赤に書き換えると途中で数値が変わる所が出て来ます。0000FFの値が赤を示す値でありその位置から色が赤になる事が解ります。





つまり、画像の特定の座標(先頭から数えて何バイト目か)に対して直接色を指定してやればその座標を書き換える事が可能なわけです。何か特定の形を挿入したければその座標と色を指定する事で任意の図形を挿入できます。霊が人間の顔を写し込みたければ何バイト目はどのコードに置き換えると言う指示を全ての座標に対して行なう事になります。と言うかそれ以外の方法はありません。デジタルデータが数値の塊である以上、仕様に従った正しい数値を指定してやらない限り思った通りのデータにはならないからです。

「大体こんな感じ」のイメージであっても必ずそれを「数値化」してやらなければなりません。

デジタルデータとは情報を数値化したものですから。

因みにこのBMP画像は一つのドットが3バイトの値で表現されてます。24ビットカラーと呼ばれるものですがこれにより表現可能な色の種類は16,777,216色です。俗に1677万色と呼ばれるのを聞いた事ありませんか? この数は人間の目が識別できる色数を超えているのでフルカラーとも呼ばれます。これ以上区別させても人間の目にはその違いが区別できないので。

[注]他に65536色(0000〜FFFF)、256色(00〜FF)、16色(0〜F)などもあります。

その1677万色が000000〜FFFFFFまでのコードに割り当てられているわけですが、画像を書き換えるならどの色がどのコードになっているかを全て把握してなければなりません。例えば黒→グレー→白と言った段階を作る事で陰影が表現されるわけですがその数値をテキトーに入れたのでは全く違う色になってしまいます。色は全てコード化されてるからです。

写真の特定の座標が何バイト目に来るのかを計算しその座標に1677万色の特定の色を指定する。その作業を任意の画像を入れたい全ての座標に対して行わなければ人の顔なり何なりを挿入する事はできません。それをシャッターを切ってメモリに記録される瞬間に暗算で計算してしまうとしたら霊と言うのは人間の能力を遙かに超えたスーパーハッカーと言う事になります。いや、確かに人間じゃないですけど(^^;

[大雑把な流れ]
霊に不思議な力があって記録用のメモリを書き換える事が可能だったとしても、霊が人の顔を画像に書き込みたいとすれば

顔を書き込みたい座標を特定する。当然だが座標は顔の輪郭、凹凸、陰影等の全てを何バイト目として指定しなければならない。

その座標に対して元の色を顔の色に書き換える。1677万色の中からそれぞれの座標に対して色コードを指定する。

不思議な力を使って半導体のデータを書き換える

補足すると、ここではコードを16進数で表わしてますがこれは人間に読みやすくしてあるだけで(計算上キリがいいから)実際のコンピュータ内部では2進数になってます。

さて、ここまでは画像がBMP形式である事を前提に話を進めてきました。ところがデジカメの画像はBMPではなくJPG形式で保存されるのが普通です。BMPは無圧縮なのでそのまま保存するととんでもない容量になってあっと言う間にメモリ容量が足りなくなってしまいます。

ところがこの圧縮データと言うのが曲者でしてBMPと同じやりかたでは書き換えができません。圧縮した事により色コードを単純に並べたBMPとはデータの仕組みが違って来るからです。

例えばこんな画像があるとして


中央にこんな感じでぼかし(加工)を施したとします。


これをダンプしてみると

データの先頭部分で既にこれだけ数値が変わってます。

※記事をウェブサイトへ移轉させる際に畫像をリサイズしたので實際の數値は變はってます。


こちらはデータの中間辺り。


同じアドレスなのに数値が全く違うのが解りますね? 元々全体が単色の画像ではない上に圧縮を掛けてるわけですから当然です。ここでは画像にぼかしを入れてますが人の顔を書き込む場合でも原理は同じです。

JPG画像に人の顔の画像を書き込みたいとすれば先づは圧縮されたJPG画像を一旦BMPに戻さなければなりません。そうしないと座標と色の指定ができないからです。その為には圧縮アルゴリズムに従って無圧縮に戻す計算をしなければなりません。

[大雑把な手順はこんな感じ]

圧縮された数値をアルゴリズムに従って無圧縮の状態に戻す。これにより各ドットの座標・色を指定できる樣になる。

顔を書き込みたい座標を特定する。当然だが座標は顔の輪郭、凹凸、陰影等の全てを特定しなければならない。

その座標に対して元の色を顔の色に書き換える。1677万色の中からそれぞれの座標に対して色コードを指定する。

アルゴリズムに従い再度圧縮したJPGデータに変換する。

不思議な力を使って半導体のデータを書き換える

因みに一般的なJPGの圧縮方式はハフマン圧縮と呼ばれるものです。詳細はこちらをご覽ください。

この原理を完全に理解した上で瞬時に暗算でやってしまうだけで凄いと思いませんか? 霊になったら理数系の能力が飛躍的に発達するんでしょうか?

因みにJPGデータには圧縮率と言うものがありこれを変更する事で画像の質を任意に変更できます。画質を落としてでもデータサイズを小さくしたいとかサイズは犠牲にしても画質を上げたいと言った目的に応じて圧縮率を変更します。同じ画像で圧縮率を変更したらどうなるのかをダンプしたのがこちらです。

圧縮率100%(高画質)


圧縮率70%(低画質)


ダンプ画面


BMP画像と違って同じアドレスでも数値がまるっきり変わってるでしょ?JPG圧縮では画像の各ドットに対してそれぞれを一つづつ圧縮してるわけではありません。ある程度のパターンに分類してそれぞれをどの樣に圧縮するかを決めます。これにより大雑把に間引いてでもデータ量を小さくできる所や圧縮率を犠牲にしてでも元データの損失を少なくする所が生じます。圧縮率を変更するとその計算も変わって来ますから同じ元画像から圧縮したデータでもダンプすると数値が変わって来るわけです。

[注]この画像の元データ(BMP)は88KBですがJPGに変換した場合100%圧縮で8KB、70%圧縮で4KBとデータサイズが異なってます。

写真一枚のデータ量が1MBだったとしてもそれをダンプした数値を見ただけで普通の人なら「こんなの計算できるか!」となります。1MBある文章データを読んでみてそれが全部数値だったらと考えてみて下さい。短編小説一つで大体80KB程なのでざっとその10倍の量の数値の羅列になります。

[例]この記事の本文が約82KBです。10倍にしても820KBですから1MBは更に大きいわけです。それが全て数値の羅列である状態を想像して下さい。実際にどうなるのか見てみたい人はバイナリエディタを使ってデータを開いてみれば解ります。

JPG圧縮の仕組みがどうにも解らない人はこちらに丁寧な解説があるので參照して下さい。

それでも理解できませんか? でもデジカメ写真に心霊写真を写り込ませるにはこれを理解してないとできないんですよ。

ここまではデータの原理に付いてだけ述べて来ましたがハードウェア側の問題もあります。デジカメでもスマホでもいいですが写真を撮った時のデータが基板上のどの半導体に記録されてるのか知ってます? そもそも分解しないと半導体を目にする事はできないわけですが、分解したってどの半導体かなんて普通は判りません。しかもその半導体のどの部分かなんてどうやったら判るんでしょう?

そして世の中には数えきれないくらいのデジカメ・スマホの機種が存在します。そしてその機械がどの樣な設定で写真を撮ってるかは各ユーザにより異なるわけで(設定で変更できますよね?)、設定が異なれば数値の羅列が示す意味も当然異なって来ます。例えば画像サイズを変更すると写真一枚当たりのピクセル数が変わります。当然特定の座標を示す数値も変わります。霊はどうやってデジカメの設定を読み込んでるんでしょう?

[大まかな流れはこんな感じ]

撮影者が使用する機器の種類から内部にあるデータが記録される半導体(内蔵メモリかSDカードの樣な交換可能なメディアか)を判断し、そのデータが記録されるその半導体の箇所を特定する。

撮影の設定(モード、画像サイズ、圧縮率等)の設定を判定する

撮影されたJPGデータを無圧縮に復元し特定の座標を書き換えた後に再度圧縮して保存させる。

或いは撮影された瞬間を狙ってプログラムにより圧縮される前に書き換えを行ないプログラムに圧縮・保存させる。

SDカードを分解すると中にICチップ(半導体)が入ってます。この半導体のどこに写真データが格納されてるかをどうやって判別してるんだろうか……



半導体の表面。これをどうやって理解して数値を書き換えて(以下略)







とは言うものの現実に人間はもっと手軽に画像データを処理しています。それはプログラム(ソフトウェア、アプリケーション)が人間に代わって内部的な計算をしてくれるからです。コンピュータがデジタルデータを内部で計算する処理を人間が感覚で行う処理に通訳してくれるのがプログラムだと言えば解り易いでしょう。画像処理で言えばPhotoshopなんかが代表ですね。

と言う事は霊の世界にもそうしたプログラムがあって心霊写真を撮らせる霊はそのプログラムを使ってデジカメ画像を書き換えてるんでしょうか? しかしプログラムと言うものは誰かが作らなければ存在しないものです。処理したいデータを特定しそのデータに合わせたプログラムを書かなければなりません。ワープロを使っても音楽データの編集はできないと考えれば理解しやすいと思います。

で、その霊の世界のプログラムは誰が作ってるんでしょうか? スーパーハッカーの霊がいて心霊写真の為に作ってるんでしょうか? 仮にそうだったとしてもそれを動かすハードウェアは? プログラムと言うものはハードウェアがなければ作動しません。ソフトウェア(アプリ)をインストールするのはその為です。そしてハードウェアは処理の対象となるデータ(が記録された媒体)と物理的に何らかの方法で接続されてなければなりません。有線(電流による信号)であれ無線(電波による信号)であれ。

仮に霊の世界にそうしたものがあるとすれば、その世界はある水準以上にコンピュータ技術が発達・普及してる事になります。当然ながらプログラムを走らせるハードウェアを製造できるくらいの工業化がされている事になります。プログラムを書く為のプログラム、つまりエディタ、コンパイラ、デバッガは最低限必要です。それを動かすOS(オペレーティングシステム)とそのOSに対応したハードウェアも。

もはや心霊の世界ではなくSFの世界ですね……

ここまで見て来ると霊がデジカメに対して任意の画像を書き込む事が原理的に不可能だと言うのがお分かりでしょうか? 不思議な力(念の力?)によってフィルムを感光させる事が可能だったとしても、半導体素子を書き換える事が可能だったとしても、
写真がデジタル画像である場合は数値化の計算を必ずどこかでやらなければなりません。
デジタルデータとは情報の数値化である以上、絶対に避けて通れないからです。

それを計算してのけると言うのなら霊は正にスーパーハッカーでなければならないわけです。

コンピュータもソフトウェアも一切使わず瞬時に暗算だけで膨大な量の2進数の数値を解読し書き換えてるわけですから。

しかし、こうした原理を知らずともデジカメで心霊写真を可能にする方法があります。別のアプローチとして写真を撮影した瞬間に光を反射させる物理的な何かを任意の位置に置けば当然に写真の中に映り込みますから。

但し、デジカメが撮影する光の波長は原則として人間が識別できる可視光線の範囲に限られます。いわゆる虹の七色です。何故可視光線の範囲に限られるかと言うと、その範囲を超えてしまうと人間の目には正しく認識されない為に実際に見えてる世界と異なる写真ができてしまうからです。逆に言えば人間の目に見えない波長まで再現してしまうカメラは人間が見たままをデータ化する装置としては性能が良くないと言う事です。時々見えない筈のリモコンの赤外線が写ったりしますがそれが被写体全てに広がったら実際に目で見た映像とまるっきり違う写真になるのが想像できると思います。

テレビのドキュメンタリーなんかで夜の野生動物を赤外線カメラで撮影した映像を見た事のある人は多いと思います。色が付いてませんよね? これはより正確に言えば色が付いてないのではなく人間の目がその色を識別できないからそう見えてるだけです。当然紫外線側でも同じです。もしそれを正確に捉えてしまったらどうなるかはこちらの下の方にある花の画像を見て頂ければ解ると思います。実は人間の目に見えない模様が存在してたりするわけです。

可視光線


近赤外線


近紫外線


可視光線の範囲から外れた写真が人間の目で見たものと違ったものになるのが解るでしょうか?

と言う事は心霊写真を直接デジカメに人間の目に識別可能な波長の範囲内で光の反射として写り込ませるには撮影の瞬間に人間の目に見える状態でなければならないと言う事です。それだったら撮影してる時に撮影者や周囲の人が気付きますよね?

何せ肉眼で見えてるんですから。

世の中には心霊写真を解説する霊能力者なる人達が存在しますがデジカメの心霊写真に付いては是非こうしたデジタルデータの原理を踏まえた上でどうやってその写真が出来たのかを解説して欲しいものです。

実の所、これでもかなり簡略化した説明しかしてません。データの構造(セグメント)がどうとか、記録媒体の管理領域・データ領域がどうとか、フォーマットによるフラグメンテーションがどうとか一々書いてたらキリが無いからです(笑)。


(04/08/2678)

comments on social media
セラフィム2501
2018/08/04 16:00:10
こんにちは〜。

力作ですね〜!

10%解ってないと思いますが、最近のテレビでやってる心霊写真や心霊映像はCGで作ってるのを観た事ありますよ〜。


コメントへの返答
2018/08/04 20:14:48
珍しく季節ネタを書いてみました(笑) 。

霊の存在に付いては「分からない」としか言えませんがデジタルデータの原理からPCもソフトも使わずに任意の画像を書き込むのは無理だと思います。そもそも1677万色のコードを暗記してるだけでも凄い(笑)。だからこそそれができるならスーパーハッカーなわけです(^^;

最近のTVってヤラセで心霊写真作ってるのを暴露してるんですか(笑)。
まねこ
2018/08/04 17:35:45
霊能者の方にお会いしたことがありますが
霊は意外と普通の格好をしてウロウロしてるんですって〜!
死んだ人の霊より生きてる人の怨念の方が恐ろしいらしいです。

まねこはおばけには興味が無いのでみーちゃん見て癒されます=リ1ワ=リ1ワ
コメントへの返答
2018/08/04 20:15:48
私は霊が見える様な特殊能力を持ち合わせていないので霊の存在は否定も肯定もしませんがお星様になったニャンコが会いに来てくれたらな〜、とは思います(^^:

ただ、霊が念の力?によってデジカメ写真を任意に書き換えてると言うのならそれは原理的に無理と思います。PCも画像加工ソフトも使わずにデジタル画像を書き換えるには上記の計算を暗算でしなければならないからです。

それでもデジカメで心霊写真が撮れると言う霊能力者がいたら、写真に写る条件が特定されるので霊の正体を解明する手掛かりになると思います。カメラマニアな霊能力者がいたら是非解明して欲しいものです(^^;
ma_mi
2018/08/05 07:27:31
おばけに殺されることはないけど、
生きてる人間に殺されることはあるから
やっぱり生きてる人間がいっちばんヤバイと思う=リヲワ
コメントへの返答
2018/08/05 19:56:53
人間は裏表あったり汚い所があるからね〜。政治家とか見てるとよくわかる(笑)。

やっぱりニャンコが一番(^^)
岡リ
2018/08/05 13:43:48
ウチュー人は?

未来人とか・・・(^◇^;)
コメントへの返答
2018/08/05 19:57:48
実は我々より科学力の発達した宇宙人や未来人がイタズラしてデータ書き換えてたって方が説得力ありますね〜。デジカメ写真に関する限り(笑)。