Computer Vision Advent Calendar 2013
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
*この記事について [#f8b18a9c]
-この記事は[[Computer Vision Advent Calendar 2013>http://...
*「Bayer さんに敬意を表して」 [#lb8b0ebd]
-現在販売されているCCDカメラのうち、多くはBayerパターンと...
-高い業務用のカメラは3CCDと、RGBそれぞれにCCDセンサを持っ...
-そこで考案されたのが、Bayerパターンです。
-この方法だと、各ピクセルごとに、RGBのそれぞれの色が割り...
|BGCOLOR(red):|BGCOLOR(green):|BGCOLOR(red):|BGCOLOR(gree...
|BGCOLOR(green):|BGCOLOR(blue):|BGCOLOR(green):|BGCOLOR(b...
|BGCOLOR(red):|BGCOLOR(green):|BGCOLOR(red):|BGCOLOR(gree...
|BGCOLOR(green):|BGCOLOR(blue):|BGCOLOR(green):|BGCOLOR(b...
|BGCOLOR(red):|BGCOLOR(green):|BGCOLOR(red):|BGCOLOR(gree...
|BGCOLOR(green):|BGCOLOR(blue):|BGCOLOR(green):|BGCOLOR(b...
-こんな具合に並べます。
-この状態の画像をBayer画像、もしくはRAWフォーマットと呼び...
-RAW(=生)と呼ばれるのは、センサに一番近い状態の生の情報だ...
*Bayerからカラー画像へ [#s84eb50e]
-このBayer画像、見てみるとこんな感じです。
#ref(bayer.png)
-拡大してみるとこんな感じです
#ref(BayerEnlarge.png)
-言葉で表すと「ポツポツと斑点がある感じのグレースケール画...
-そう。CCD1枚で得られた光の強度を記録した画像なので、グレ...
-OpenCV風に言うと、CV_8UC1です((ちなみに、真面目な話をす...
-しかも、技術者や開発者ならともかく、Bayerの画像をもらっ...
-OpenCVで言えば、cv::cvtColor という関数があります。これ...
#geshi(c++,number){{
// Demosaicing
COLOR_BayerBG2BGR = 46,
COLOR_BayerGB2BGR = 47,
COLOR_BayerRG2BGR = 48,
COLOR_BayerGR2BGR = 49,
COLOR_BayerBG2RGB = COLOR_BayerRG2BGR,
COLOR_BayerGB2RGB = COLOR_BayerGR2BGR,
COLOR_BayerRG2RGB = COLOR_BayerBG2BGR,
COLOR_BayerGR2RGB = COLOR_BayerGB2BGR,
COLOR_BayerBG2GRAY = 86,
COLOR_BayerGB2GRAY = 87,
COLOR_BayerRG2GRAY = 88,
COLOR_BayerGR2GRAY = 89,
// Demosaicing using Variable Number of Gradients
COLOR_BayerBG2BGR_VNG = 62,
COLOR_BayerGB2BGR_VNG = 63,
COLOR_BayerRG2BGR_VNG = 64,
COLOR_BayerGR2BGR_VNG = 65,
COLOR_BayerBG2RGB_VNG = COLOR_BayerRG2BGR_VNG,
COLOR_BayerGB2RGB_VNG = COLOR_BayerGR2BGR_VNG,
COLOR_BayerRG2RGB_VNG = COLOR_BayerBG2BGR_VNG,
COLOR_BayerGR2RGB_VNG = COLOR_BayerGB2BGR_VNG,
// Edge-Aware Demosaicing
COLOR_BayerBG2BGR_EA = 135,
COLOR_BayerGB2BGR_EA = 136,
COLOR_BayerRG2BGR_EA = 137,
COLOR_BayerGR2BGR_EA = 138,
COLOR_BayerBG2RGB_EA = COLOR_BayerRG2BGR_EA,
COLOR_BayerGB2RGB_EA = COLOR_BayerGR2BGR_EA,
COLOR_BayerRG2RGB_EA = COLOR_BayerBG2BGR_EA,
COLOR_BayerGR2RGB_EA = COLOR_BayerGB2BGR_EA,
}}
-こいつらを使うことで、BayerパターンをRGBの3レイヤ画像、C...
-この変換の方法はそれこそ色々あるのですが、一番簡単な方法...
<画像TBW>
-これでそこそこの性能が出ますし、画質に特化したのでなけれ...
-当然エッジ近辺でモザイク状にノイズが出ますが、最近はセン...
-ちなみにOpenCVの実装では、Edge AwareなBayer補完が実装さ...
*RGBからBayerへの逆変換 [#c6af2e8e]
-OpenCVの色変換は、大体可逆変換です。
#geshi(C++,number){{
COLOR_BGR2HSV = 40,
COLOR_HSV2BGR = 54,
}}
-こんな感じに、BGR2***←→***2BGRと大体対になって定義されて...
-しかし、Bayerだけは逆変換が実装されていません。
-まぁ、上記の理由を考えれば、大体分かりますよね。
-ただ、Bayer画像は、元のBayerパターンがわかれば、大体Baye...
-ちなみに、Bayerパターンは、以下の 4種類あります。
-Bayer(RG)
|BGCOLOR(red):|BGCOLOR(green):|BGCOLOR(red):|BGCOLOR(gree...
|BGCOLOR(green):|BGCOLOR(blue):|BGCOLOR(green):|BGCOLOR(b...
|BGCOLOR(red):|BGCOLOR(green):|BGCOLOR(red):|BGCOLOR(gree...
|BGCOLOR(green):|BGCOLOR(blue):|BGCOLOR(green):|BGCOLOR(b...
|BGCOLOR(red):|BGCOLOR(green):|BGCOLOR(red):|BGCOLOR(gree...
|BGCOLOR(green):|BGCOLOR(blue):|BGCOLOR(green):|BGCOLOR(b...
-Bayer(GB)
|BGCOLOR(green):|BGCOLOR(blue):|BGCOLOR(green):|BGCOLOR(b...
|BGCOLOR(red):|BGCOLOR(green):|BGCOLOR(red):|BGCOLOR(gree...
|BGCOLOR(green):|BGCOLOR(blue):|BGCOLOR(green):|BGCOLOR(b...
|BGCOLOR(red):|BGCOLOR(green):|BGCOLOR(red):|BGCOLOR(gree...
|BGCOLOR(green):|BGCOLOR(blue):|BGCOLOR(green):|BGCOLOR(b...
|BGCOLOR(red):|BGCOLOR(green):|BGCOLOR(red):|BGCOLOR(gree...
-Bayer(GR)
|BGCOLOR(green):|BGCOLOR(red):|BGCOLOR(green):|BGCOLOR(re...
|BGCOLOR(blue):|BGCOLOR(green):|BGCOLOR(blue):|BGCOLOR(gr...
|BGCOLOR(green):|BGCOLOR(red):|BGCOLOR(green):|BGCOLOR(re...
|BGCOLOR(blue):|BGCOLOR(green):|BGCOLOR(blue):|BGCOLOR(gr...
|BGCOLOR(green):|BGCOLOR(red):|BGCOLOR(green):|BGCOLOR(re...
|BGCOLOR(blue):|BGCOLOR(green):|BGCOLOR(blue):|BGCOLOR(gr...
-Bayer(BG)
|BGCOLOR(blue):|BGCOLOR(green):|BGCOLOR(blue):|BGCOLOR(gr...
|BGCOLOR(green):|BGCOLOR(red):|BGCOLOR(green):|BGCOLOR(re...
|BGCOLOR(blue):|BGCOLOR(green):|BGCOLOR(blue):|BGCOLOR(gr...
|BGCOLOR(green):|BGCOLOR(red):|BGCOLOR(green):|BGCOLOR(re...
|BGCOLOR(blue):|BGCOLOR(green):|BGCOLOR(blue):|BGCOLOR(gr...
|BGCOLOR(green):|BGCOLOR(red):|BGCOLOR(green):|BGCOLOR(re...
-例えば、赤の画素。Bayer(RG)の一番左上の画素は、赤の画素...
-同様に、GとBの画素に関しても同じことを繰り返すだけで戻せ...
-なので、適切なBayerパターンを選んで上げれば、それだけでB...
-実は最初に掲載した画像は、lenaを無理やりBayerパターンに...
-lenaのBayer画像がもし現存してたら、かなりレアだったんで...
*Bayerさんに敬意を表して [#p15116d5]
-さて、このBayerパターンは実はBayerさんが考案されて、そこ...
-Bryce E. Bayerさん、1929年8月15日-2012年11月13日。そう。...
-ご冥福をお祈りすると同時に、Bayerパターンについて何か書...
-あと、CVAdventCalendarの先陣を切らなきゃ!と思ってこの記...
-そのBayerパターンに関して知ったことがあったので、書いて...
*最後に [#a76188ad]
-12月1日が動きがなかったのは、ちょっと残念でしたが、Compu...
[[Computer Vision Advent Calendar 2012]]
終了行:
*この記事について [#f8b18a9c]
-この記事は[[Computer Vision Advent Calendar 2013>http://...
*「Bayer さんに敬意を表して」 [#lb8b0ebd]
-現在販売されているCCDカメラのうち、多くはBayerパターンと...
-高い業務用のカメラは3CCDと、RGBそれぞれにCCDセンサを持っ...
-そこで考案されたのが、Bayerパターンです。
-この方法だと、各ピクセルごとに、RGBのそれぞれの色が割り...
|BGCOLOR(red):|BGCOLOR(green):|BGCOLOR(red):|BGCOLOR(gree...
|BGCOLOR(green):|BGCOLOR(blue):|BGCOLOR(green):|BGCOLOR(b...
|BGCOLOR(red):|BGCOLOR(green):|BGCOLOR(red):|BGCOLOR(gree...
|BGCOLOR(green):|BGCOLOR(blue):|BGCOLOR(green):|BGCOLOR(b...
|BGCOLOR(red):|BGCOLOR(green):|BGCOLOR(red):|BGCOLOR(gree...
|BGCOLOR(green):|BGCOLOR(blue):|BGCOLOR(green):|BGCOLOR(b...
-こんな具合に並べます。
-この状態の画像をBayer画像、もしくはRAWフォーマットと呼び...
-RAW(=生)と呼ばれるのは、センサに一番近い状態の生の情報だ...
*Bayerからカラー画像へ [#s84eb50e]
-このBayer画像、見てみるとこんな感じです。
#ref(bayer.png)
-拡大してみるとこんな感じです
#ref(BayerEnlarge.png)
-言葉で表すと「ポツポツと斑点がある感じのグレースケール画...
-そう。CCD1枚で得られた光の強度を記録した画像なので、グレ...
-OpenCV風に言うと、CV_8UC1です((ちなみに、真面目な話をす...
-しかも、技術者や開発者ならともかく、Bayerの画像をもらっ...
-OpenCVで言えば、cv::cvtColor という関数があります。これ...
#geshi(c++,number){{
// Demosaicing
COLOR_BayerBG2BGR = 46,
COLOR_BayerGB2BGR = 47,
COLOR_BayerRG2BGR = 48,
COLOR_BayerGR2BGR = 49,
COLOR_BayerBG2RGB = COLOR_BayerRG2BGR,
COLOR_BayerGB2RGB = COLOR_BayerGR2BGR,
COLOR_BayerRG2RGB = COLOR_BayerBG2BGR,
COLOR_BayerGR2RGB = COLOR_BayerGB2BGR,
COLOR_BayerBG2GRAY = 86,
COLOR_BayerGB2GRAY = 87,
COLOR_BayerRG2GRAY = 88,
COLOR_BayerGR2GRAY = 89,
// Demosaicing using Variable Number of Gradients
COLOR_BayerBG2BGR_VNG = 62,
COLOR_BayerGB2BGR_VNG = 63,
COLOR_BayerRG2BGR_VNG = 64,
COLOR_BayerGR2BGR_VNG = 65,
COLOR_BayerBG2RGB_VNG = COLOR_BayerRG2BGR_VNG,
COLOR_BayerGB2RGB_VNG = COLOR_BayerGR2BGR_VNG,
COLOR_BayerRG2RGB_VNG = COLOR_BayerBG2BGR_VNG,
COLOR_BayerGR2RGB_VNG = COLOR_BayerGB2BGR_VNG,
// Edge-Aware Demosaicing
COLOR_BayerBG2BGR_EA = 135,
COLOR_BayerGB2BGR_EA = 136,
COLOR_BayerRG2BGR_EA = 137,
COLOR_BayerGR2BGR_EA = 138,
COLOR_BayerBG2RGB_EA = COLOR_BayerRG2BGR_EA,
COLOR_BayerGB2RGB_EA = COLOR_BayerGR2BGR_EA,
COLOR_BayerRG2RGB_EA = COLOR_BayerBG2BGR_EA,
COLOR_BayerGR2RGB_EA = COLOR_BayerGB2BGR_EA,
}}
-こいつらを使うことで、BayerパターンをRGBの3レイヤ画像、C...
-この変換の方法はそれこそ色々あるのですが、一番簡単な方法...
<画像TBW>
-これでそこそこの性能が出ますし、画質に特化したのでなけれ...
-当然エッジ近辺でモザイク状にノイズが出ますが、最近はセン...
-ちなみにOpenCVの実装では、Edge AwareなBayer補完が実装さ...
*RGBからBayerへの逆変換 [#c6af2e8e]
-OpenCVの色変換は、大体可逆変換です。
#geshi(C++,number){{
COLOR_BGR2HSV = 40,
COLOR_HSV2BGR = 54,
}}
-こんな感じに、BGR2***←→***2BGRと大体対になって定義されて...
-しかし、Bayerだけは逆変換が実装されていません。
-まぁ、上記の理由を考えれば、大体分かりますよね。
-ただ、Bayer画像は、元のBayerパターンがわかれば、大体Baye...
-ちなみに、Bayerパターンは、以下の 4種類あります。
-Bayer(RG)
|BGCOLOR(red):|BGCOLOR(green):|BGCOLOR(red):|BGCOLOR(gree...
|BGCOLOR(green):|BGCOLOR(blue):|BGCOLOR(green):|BGCOLOR(b...
|BGCOLOR(red):|BGCOLOR(green):|BGCOLOR(red):|BGCOLOR(gree...
|BGCOLOR(green):|BGCOLOR(blue):|BGCOLOR(green):|BGCOLOR(b...
|BGCOLOR(red):|BGCOLOR(green):|BGCOLOR(red):|BGCOLOR(gree...
|BGCOLOR(green):|BGCOLOR(blue):|BGCOLOR(green):|BGCOLOR(b...
-Bayer(GB)
|BGCOLOR(green):|BGCOLOR(blue):|BGCOLOR(green):|BGCOLOR(b...
|BGCOLOR(red):|BGCOLOR(green):|BGCOLOR(red):|BGCOLOR(gree...
|BGCOLOR(green):|BGCOLOR(blue):|BGCOLOR(green):|BGCOLOR(b...
|BGCOLOR(red):|BGCOLOR(green):|BGCOLOR(red):|BGCOLOR(gree...
|BGCOLOR(green):|BGCOLOR(blue):|BGCOLOR(green):|BGCOLOR(b...
|BGCOLOR(red):|BGCOLOR(green):|BGCOLOR(red):|BGCOLOR(gree...
-Bayer(GR)
|BGCOLOR(green):|BGCOLOR(red):|BGCOLOR(green):|BGCOLOR(re...
|BGCOLOR(blue):|BGCOLOR(green):|BGCOLOR(blue):|BGCOLOR(gr...
|BGCOLOR(green):|BGCOLOR(red):|BGCOLOR(green):|BGCOLOR(re...
|BGCOLOR(blue):|BGCOLOR(green):|BGCOLOR(blue):|BGCOLOR(gr...
|BGCOLOR(green):|BGCOLOR(red):|BGCOLOR(green):|BGCOLOR(re...
|BGCOLOR(blue):|BGCOLOR(green):|BGCOLOR(blue):|BGCOLOR(gr...
-Bayer(BG)
|BGCOLOR(blue):|BGCOLOR(green):|BGCOLOR(blue):|BGCOLOR(gr...
|BGCOLOR(green):|BGCOLOR(red):|BGCOLOR(green):|BGCOLOR(re...
|BGCOLOR(blue):|BGCOLOR(green):|BGCOLOR(blue):|BGCOLOR(gr...
|BGCOLOR(green):|BGCOLOR(red):|BGCOLOR(green):|BGCOLOR(re...
|BGCOLOR(blue):|BGCOLOR(green):|BGCOLOR(blue):|BGCOLOR(gr...
|BGCOLOR(green):|BGCOLOR(red):|BGCOLOR(green):|BGCOLOR(re...
-例えば、赤の画素。Bayer(RG)の一番左上の画素は、赤の画素...
-同様に、GとBの画素に関しても同じことを繰り返すだけで戻せ...
-なので、適切なBayerパターンを選んで上げれば、それだけでB...
-実は最初に掲載した画像は、lenaを無理やりBayerパターンに...
-lenaのBayer画像がもし現存してたら、かなりレアだったんで...
*Bayerさんに敬意を表して [#p15116d5]
-さて、このBayerパターンは実はBayerさんが考案されて、そこ...
-Bryce E. Bayerさん、1929年8月15日-2012年11月13日。そう。...
-ご冥福をお祈りすると同時に、Bayerパターンについて何か書...
-あと、CVAdventCalendarの先陣を切らなきゃ!と思ってこの記...
-そのBayerパターンに関して知ったことがあったので、書いて...
*最後に [#a76188ad]
-12月1日が動きがなかったのは、ちょっと残念でしたが、Compu...
[[Computer Vision Advent Calendar 2012]]
ページ名: