画像処理

OpenCVのRGBの並びがイヤなので並び替える

モノクロ変換 をちょっと書き換え。 boost::fusion::nviewでGBRをRGBに変換してしまいましょう。 #include <iostream> #include <opencv/cv.h> #include <opencv/highgui.h> #include <boost/range/algorithm.hpp> #include <boost/fusion/include/vector.hpp> #include <boost/fusion/include/vector_tie.hpp> #include </boost/fusion/include/vector_tie.hpp></boost/fusion/include/vector.hpp></boost/range/algorithm.hpp></opencv/highgui.h></opencv/cv.h></iostream>

ネガ処理

OpenCVがRGBの並び順をユーザーがコンパイル時に選択できないと知って、Boost.GILに乗り換えました。 #include <boost/gil/gil_all.hpp> #include <boost/gil/extension/io/png_io.hpp> using namespace boost::gil; rgb8_pixel_t nega(rgb8_pixel_t x) { return rgb8_pixel_t( 255 - at_c<0>(x), 255 - at_c<1>(x), 255</boost/gil/extension/io/png_io.hpp></boost/gil/gil_all.hpp>…

モノクロ変換

#include <iostream> #include <opencv/cv.h> #include <opencv/highgui.h> #include <boost/range/algorithm.hpp> #include <boost/fusion/include/vector.hpp> #include <boost/fusion/include/vector_tie.hpp> #include <boost/fusion/include/algorithm.hpp> namespace fusion = boost::fusion; typedef fusion::vector…</boost/fusion/include/algorithm.hpp></boost/fusion/include/vector_tie.hpp></boost/fusion/include/vector.hpp></boost/range/algorithm.hpp></opencv/highgui.h></opencv/cv.h></iostream>

ヒストグラム伸張処理

『詳解 画像処理プログラミング C言語で実装する画像処理アルゴリズムのすべて』 で画像処理を勉強中。 これの2章に載ってたヒストグラム伸張処理を、OpenCV + Boostで書いてみました。 #include <iostream> #include <utility> #include <opencv/cv.h> #include <opencv/highgui.h> #include <boost/range/algorithm.hpp> #include <boost/range/adaptor/transformed.hpp> #inclu</boost/range/adaptor/transformed.hpp></boost/range/algorithm.hpp></opencv/highgui.h></opencv/cv.h></utility></iostream>…