OpenCV
輪郭とは~~。となりのピクセルの差が大きいところ。 でこうなる。 //画面をだすよ void display(cv::Mat image) { //まえの記事をみてね } // // ここから // int main(int argc, char** argv) { cv::Mat opencv = cv::imread("OpenCv.png",0); cv::Mat im…
前回は隙間が黒かったので今度は隙間を埋めてさらに ぼかしをいれてなめらか拡大Lenaさんにしてみる。 //画面をだすよ void display(cv::Mat image) { //まえの記事をみてね } // // ここから // int main(int argc, char** argv) { //lenaさん登場!! cv::…
こんどはLenaさんを拡大してみる。 縦の0行目と1行目の間に1行追加、1行目と2行目の間に1行追加・・・・・・ 横の0列目と1列目の間に1列追加、1列目と2列目の間に1列追加・・・・・・ 広げてみた。 //画面をだすよ void display(cv::Mat image) { //ま…
Lenaさんを半分のサイズにするには縦、横を交互に間引く 縦の1行目と3行目と・・・・ 横の1列目と3列目と・・・・ つめる!!! //画面をだすよ void display(cv::Mat image) { //まえの記事をみてね } // // ここから // int main(int argc, char** arg…
前回と前々回につかった白い部分を拡大する方法と黒い部分を拡大する方法を組み合わせて Lenaさんの輪郭を浮かびあがせる。白色拡大のLenaさんから黒色拡大のLenaさんを引いてみる と、あら不思議輪郭が出てきた。つまり輝度の変換の大きいところが白くなっ…
こんどは黒いところでなくて白いところを拡大してみる。 これが何の役に立つのか? //画面をだすよ void display(cv::Mat image) { //まえの記事をみてね } //受け取ったピクセル位置の八方のなかで一番数値が大きいピクセルの数字を求める uchar getMax(cv::…
Lenaさんの黒いところをちょっと拡大する。 これが何の役に立つのか? //画面をだすよ void display(cv::Mat image) { //まえの記事をみてね。 } //受け取ったピクセル位置の八方のなかで一番数値が小さいピクセルの数字を求める uchar getMin(cv::Mat image…
Lenaさんぼかしの2回めです。 えせガウスぼかし?? //画面をだすよ void display(cv::Mat image) { //以前の記事をみてね!! } int main(int argc, char** argv) { //lenaさん登場!! cv::Mat lena = cv::imread("lena.jpg"); //lenaさん白黒レトロ cv::…
OpenCVを使ってLenaさんをぼかす。 エッジはごかんべんを!! //画面をだすよ void display(cv::Mat image) { //名前をつける std::string windowName = "windowName"; cv::namedWindow(windowName); //画面位置固定 cv::moveWindow(windowName, 100, 100); …
Lenaさんをシャープにするには隣のピクセルの値を使う まず描くピクセル値を5倍、それだと濃すぎるので上、下、右、左の ピクセル値を5倍した値から引く、0-255の範囲を越えると強制的に0か255にする。 隣とくらべて明るいところはさらに明るく!! その反対…
Lenaさん画像は256x256x256の16777216色だが、減色して64色にしてみる。 256を64で割ると各色4種類。4x4x4=64色、減色にともなって暗くなるので ちょっと明るくする加工を少し追加。 //画面をだすよ void display(cv::Mat image) { //名前をつける std::str…
OpenCVを使ってLenaさんを白黒にする。 グレースケールの画像とカラーだけど白黒画像を作ってみる。 #include <string> #include <opencv2/opencv.hpp> //画面をだすよ void display(cv::Mat image) { //名前をつける std::string windowName = "windowName"; cv::namedWindow(windowName</opencv2/opencv.hpp></string>…
真っ白な画面はすべてのチャンネルを255にする。 #include <string> #include <opencv2/opencv.hpp> //画面をだすよ void display(cv::Mat image) { //名前をつける std::string windowName = "windowName"; cv::namedWindow(windowName); //画面出た!! cv::imshow(windowName, imag</opencv2/opencv.hpp></string>…
まず真っ黒な画面を作成し、次に 真っ青な画像を作成する #include <string> #include <opencv2/opencv.hpp> //画面をだすよ void display(cv::Mat image) { //名前をつける std::string windowName = "windowName"; cv::namedWindow(windowName); //画面出た!! cv::imshow(windowName,</opencv2/opencv.hpp></string>…
真っ黒な画像を作成する方法、すべてのピクセルが0つまり真っ黒 サイズは500x500。 #include <string> #include <opencv2/opencv.hpp> //画面をだすよ void display(cv::Mat image){ //名前をつける std::string windowName = "window"; cv::namedWindow(windowName); //画面出た</opencv2/opencv.hpp></string>…