デジカメで撮ったRAWデータをパソコンで現像してjpegとして書き出すと数十秒ぐらいの時間がかかります。
一方でデジカメ本体でjpeg画像を出すように設定すれば、撮った瞬間すぐに(恐らく1秒以下)jpegを書き出します。1万円ぐらいの安いコンパクトデジカメ、携帯電話のカメラでも同様です。この場合、撮像素子が作り出したRAWデータをカメラ内のマイコン(画像エンジン)でホワイトバランス、色みなどの味付けをして、jpegデータを生成しますよね。
前者が後者よりも時間を要するのは何故でしょうか。情報処理能力は、パソコンのほうがカメラ内のマイコンよりも優れていそうなのに。カメラのマイコン(ハードウェア、ソフトウェア)がjpeg生成に特化して設計されているのでしょうか。現像するためのプログラムに大きな違いがあるのでしょうか。
No.2ベストアンサー
- 回答日時:
ご自身で答えを出しておられますが、専用回路(ハードウェア処理)であることと、後から作業をする場合とで処理に必要な時間は変わります。
もし、デジタルカメラでも後からRAWをJPEGに変換する機能があれば、最低でも数秒の時間が掛かるでしょう。その理由は、補助記憶装置のデータバスが狭いからです。
基本的に、データ処理で最も時間が掛かるのは出力です。特に、主記憶(メインメモリ)から補助記憶装置(フラッシュメモリやハードディスク)に書き出すのに掛かる時間は、CPUから主記憶に書き出すのに掛かる時間の10倍を軽く超え下手をすると100倍単位になることもざらにあります。
そのため、CPUに到達し演算を開始するまでに待たされ、開始してからも、下の記憶装置から送られて来るデータを待ちつつ処理をするため、怖ろしく時間が掛かるようになるのです。
一般に、カメラデバイスはそのデバイスの中に専用のバス回路とASICを備えており、その帯域幅は数ギガ~高性能なら50GB/s(50ギガバイト毎秒)を超えるほどの速度で繋がっています。UltraHD 8K動画などに対応するデバイスだと、凄まじい回路幅(道路で言う車線数)が必要です。
その瞬間のデータをがばっと画像処理回路とエンコーダーが受け取り、瞬時に圧縮を掛けます。
そのため、処理は一瞬で終わります。ただし、書き込みに時間が掛かるため、連射などをすると、バッファメモリの空きの問題と、SDカードなどの速度との兼ね合いで、何枚かの連射で連射が止まるという現象が起きることがあります。このバッファ枯渇と同じ現象を逆転させたものが、PCでも起きると思えば分かりやすいでしょう。
これに加えて、CPUは汎用処理回路であり、特化型ではありません。
また、多くのRAW現像ソフトは自在にユーザー側でパラメーター変更が出来るように設計されており、エンコードに一定のパラメーター値の指定が可能となっています。即ち、間にいくつかのカスタマイズを行う機能がエンコーダーに備わっているのです。
そのため、カメラで処理する場合に比べて、中間関数での処理過程が多く、さらにOSなどホスト制御のロードバランスも行われるため、時間が掛かるようになります。
これは、コンピュータゲーム(パソコンと専用機)の違いでも言われることですが、WindowsやMacOSなどの汎用OSは、どんなハードでも対応していれば動く、ソフトはゲーム、エンターテイメント、オフィス、インターネット問わず使えるといった汎用性が求められます。そのため、自由に設定を変更できる部分が多くあります。
また、プログラミングを容易に行うため、デバイスドライバとの親和性を高めるAPIも深い(デバイスに近い)ものから、浅い(利用者に近い部分)まで様々あります。
専用品では、最初からハードに繋がるデバイスもこれとこれとと決まっていますから、間にかませるプログラムなど端的に言えばハードを制御するものと、アプリケーションの2点でOKです。下手をすれば、それ専用で他にデバイスが繋がったり、アプリケーションが増えることがないカメラ制御SoCなどであれば、ハードに直接キックするだけでも良いのです。
それに対して、CPUで後から処理する場合は、パラメーターの確認、パラメーターに基づいてエンコーダーを起動、中間関数のいくつかをエンコーダーに合わせて最適化、エンコードの開始、ハードディスクなど下位のデバイスの小さな蛇口から大きな樽にデータを移す。大きな樽からエンコーダー(ソフトウェア/CPU)に送り込む。完了したら再び元のディスクに戻すという工程が必要となり、処理時間は相対的に長くなります。
尚、SSDなどを使ったとしても、短縮できる時間は決して多くはありません。
それに加えて専用SoCを搭載しているかどうかも影響します。
ご回答をありがとうございます。専用機の強みですね。データ処理の速度を律するのが演算でなく出力というのは初耳で、意外に感じました。
No.7
- 回答日時:
数十秒もかかるのはどんなパソコン/ソフトだろう? なんて思ってしまいますが・・・。
JOEG変換以外でもPCの方が時間がかかる処理、ありますね。専用のハードを持っているのも理由のひとつだと思いますが、処理が違うこともあるのがもうひとつの理由だと思います。カメラメーカの現像ソフトを使っていますが、カメラにもある処理をPCのソフトで行うとき、高速/高画質が選べたりします。高画質は当然時間がかかります。
ほかの処理でもアルゴリズムが違うものもあるでしょうね、PCで行う場合は時間制限がないので時間のかかるより仕上がりのよいアルゴリズムが使えますから。
No.6
- 回答日時:
一言で言えば、データー量の違いです。
JPEGは8bit、RAWは14bit(12bitのRAWもある)。つまり、データー量で64倍の差。
まぁ、ワンショットなら気付かないと思うが、連写の利く一眼レフなどで、バッファフルから、画像処理⇒書き込みとなると、それなりに時間を要します。
方や、最新のノートPCでも、CORE i7に8GB程度のメーモリーを積んだモノなら、変換書き込みに数秒(データー量とソフトによる)ですから、64倍のデーター量差から考え、PC処理の方が遅いとは言い切れません。
No.5
- 回答日時:
ご自分でも書いておられるとおり、パソコンの処理能力がいかに高くても、専用のハードウェアチップの速度には到底かないません。
極めて大きな理由の一つです。もう一つ理由があります。
あなたは、何故、パソコンでRAWの現像処理をしたいと思いましたか?
カメラのデフォルトの処理又は、カメラで設定できる範疇外のところで調整がしたかったからですよね。
実は、カメラの専用チップは、撮ってすぐに処理をして格納する。その時間も極めて短い時間内に行わなければ「ならない」という制約の下で作られています。(だって、撮影してから、書き込みに10秒かかりますなんて絶対に言えませんものね。)そのため、必要な演算も、これくらいなら大差なしと省略しているところが多々あります。設定の幅もそれなりに限定されます。そうして、速度を追求しているのです。
パソコンで、わざわざRAW現像をしようなんて人は、当然、調整の幅も、現像の結果も、そして、操作性も最大限を求めます。「少しくらい時間がかかる程度で済むなら、良い結果を出してください。」というのがスタンスです。勢い、パソコンの処理ソフトは、カメラ内のチップより、多くの処理をする必要にせまられます。
ハードウェアの速度でも差をつけられ、処理する内容でも差をつけられたら・・・そりゃ、同じ時間で現像しろというのは、やっぱり、かわいそうですよね。
ご回答をありがとうございます。言われてみれば、RAW現像したい時って、多少の時間はかかっても気にしないけれど(命令だけ与えて寝てる時に処理させても良いぐらい)、パラメータは広く弄れる事を求めますね。
No.4
- 回答日時:
自分で答えを書いてますね。
簡単に言うと専用プロセッサと汎用プロセッサの違い。
専用プロセッサは特定の処理に特化したもので、一般的に小規模で高速。
汎用プロセッサはあたえるプログラムでなんでもできるがでかくて複雑になり、複雑故に効率がよくありません。
デジカメだと限られた容積のボディに収めなくてはならないし、電力も限られています。
専用プロセッサならどちらにも適している上に高速処理が可能。対してパソコンで使用されている汎用プロセッサ(CPU)はでかくて消費電力も高いうえ発熱も凄い。
さらにパソコンではOSの上でアプリケーションが動くわけですが、その間には.NET Frameworkみたいなミドルウェアライブラリもあるために実行効率は更に悪くなります。それだったらWindows以前のMS-DOSでCPUやメモリを直接操作したほうが昔の非力で安いCPUでもそれなりの速度で処理できるかもしれないww
今のフルスペックWindwosは超肥満児になっているので開発環境は快適になっていても実行環境という点では強力なハードなくして快適な環境を構築することは不可能となってます。
No.3
- 回答日時:
詳しくないですが。
>カメラのマイコン(ハードウェア、ソフトウェア)がjpeg生成に特化して設計されているのでしょうか。
そうですね。PC 並みの汎用的なソフトウェア処理能力を持つCPU をデジカメに使うのは物理的大きさや
消費電力の点で無理なので、ハードウェアエンジンを使います。
(画像処理LSIなど)
こういうの
http://www.kumikomi.net/article/news/2013/09/05_ …
http://www.megachips.co.jp/product/lsi.html
http://img.jp.fujitsu.com/downloads/jp/jed/broch …
ご回答をありがとうございます。こういうリンクは普段見慣れない情報なので、新鮮で面白いです。詳細は分からないけれど、あの小さいチップに知恵と技術が詰め込まれているんですね。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 一眼レフカメラ 「Imaging Edge」を手動起動せず、ARWファイルを最高画質JPEGへ変換する方法は? 2 2022/08/05 11:38
- デジタルカメラ 写真の解像度 1 2022/12/14 18:43
- Android(アンドロイド) TIFF画像を表示できるAndroidアプリを探してます。 3 2022/05/16 09:00
- 写真 写真のRAWデータについて WindowsのパソコンでRAWデータをJPEGなどに一括でたくさんの画 1 2023/07/18 02:07
- 写真 log撮影について。今まで、9割がた映像ではなく写真をlog撮影でとってきました。 映像ではlogの 3 2023/07/04 23:28
- 一眼レフカメラ RAWデータ自体に追加データの保存ができるのですか? 「Imaging Edge」操作していたら 2 2022/08/05 11:44
- 写真 ご意見ください。 現在、新しいカメラの購入を考えていて、予算とスペックのバランスを考えて、α7III 2 2023/02/27 22:08
- その他(プログラミング・Web制作) 監視カメラを水平につないでパノラマの映像を作りたい 1 2022/09/06 15:26
- JavaScript アップロードファイルの種類によって処理を分岐させたいのですが書き方が分からずアドバイスお願いします 4 2023/06/17 19:12
- デジタルカメラ 【デジカメ】写真を撮ったときにその場で画像に文字をデジカメ側で入れられるカメラがあっ 4 2022/11/25 23:47
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
カメラすきのTwitter等を見てい...
-
現像液の量は…。
-
Canon kissx9の記録画質につい...
-
PC内RAW現像がカメラ内現像より...
-
映画の完成披露試写会で、身分...
-
ペットショップの犬猫を無断で...
-
YouTube撮影
-
犯罪になりますか?
-
伊丹空港近辺での撮影
-
ゲリラ撮影ってどういう意味で...
-
建物の真下から、上方へカメラ...
-
撮影禁止のライブなのに撮影し...
-
鉄道の前面展望の撮影方法について
-
デパート内などの写真撮影
-
液晶モニターと実際の撮影画像...
-
このカメラの名前が分かる方い...
-
teams会議での質問です。 teams...
-
グーグルフォトのフォトって、...
-
動画や写真をスマホで撮影する...
-
スタジオアリスで今日撮影、注...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ニコンのカメラで撮影したRAW画...
-
Canon kissx9の記録画質につい...
-
PC内RAW現像がカメラ内現像より...
-
キャノンで撮影した画像に対し...
-
画像処理ソフト、どちらがいい...
-
現像液の成分を教えてください。
-
AdobeRGBの設定について
-
現像液の量は…。
-
PENTAXのホワイトバランス
-
RAW現像とJPEGの違い
-
自分で現像し自分でプリント
-
F550EXRでRAW撮影?
-
★一眼レフの必要性について
-
現像に失敗しました。フィルム...
-
RAWについて
-
●ハイコントラストな白黒ネガに...
-
ペットショップの犬猫を無断で...
-
撮影禁止のライブなのに撮影し...
-
フィルムカメラを入れる前に出...
-
エクセルのマクロでデジカメの...
おすすめ情報