Menu
Menu
Home
Trend
Network
Bazuri Time
OpenCV Documentation
Reference
openCV doc
Module(main)
objdetect
QRcode
猫認識
photo
Pencil Sketch
水彩画エフェクト(Water Color)
video
オプティカルフロー(calcOpticalFlowFarneback)
オプティカルフロー(calcOpticalFlowPyrLK)
オプティカルフロー(Practical:オーラグラフィー)
オプティカルフロー(Practical:グリッチ)
features2d
特徴点描画(単一画像)
Module(contrib)
dpm
Deformable Part Model
freetype
日本語テキスト
intensity_transform
輝度値補正
ximgproc
高速輪郭抽出
AnisotropicDiffusion
輪郭保管するノイズフィルタ(Reich-Wörgötter)
陰影を考慮した二値化処理
Pei-Lin Normalization
細線化
グラフ構造を考慮した領域分割
EdgeBoxes
xphoto
OilPaint
Gray World White Balance
Simple White Balance
Module(cuda)
cudafilters
LaplacianFilter
GaussianFilter
SobelFilter
ScharrFilter
MorphologyFilter
cudaimgproc
bilateralFilter
Canny
HoughLine
HoughCircle
CornerHarris
CornerMinEigenVal
水彩画エフェクト(Water Color)
Gallery
src 元画像
sigma_s=60, sigma_r=0.45(default)
sigma_s=15, sigma_r=0.45
sigma_s=60, sigma_r=0.25
what process?
水彩画エフェクト(Water Color) sigma_s : 平滑化(ぼかし)処理する時に使う隣接行列の大きさ ・値が大きい程、主に領域面が平滑化される ・既定値:60 ・範囲(0〜200) sigma_r : 色素(RGB)同士の平均値を算出して反映 ・値が大きい程、主にエッジが平滑化される ・既定値:0.45f ・範囲(0〜1.0)
cook code C++
#include <opencv2/opencv.hpp> #include <opencv2/core/utility.hpp> #include <opencv2/photo.hpp> int main(int argc, const char* argv[]) { // ./out -src=[image path] cv::String keys = "{src||}"; cv::CommandLineParser parser(argc, argv, keys); cv::String src_path = parser.get<cv::String>("src"); cv::Mat src = cv::imread(src_path); cv::Mat dst; /* default * * sigma_s 60 * sigma_r 0.45f * */ cv::stylization(src, dst,60,0.45f); cv::imwrite("./output.png", dst); return 0; }
cook code Python
import cv2 import argparse def main(): parser = argparse.ArgumentParser() parser.add_argument('--src') parser.add_argument('--output') args = parser.parse_args() mat = cv2.imread(args.src) #[default] # sigma_s 60 # sigma_r 0.45f dst = cv2.stylization(mat, sigma_s=60, sigma_r=0.45) cv2.imwrite("./output.png",dst) if __name__ == "__main__": main()
Reference
https://docs.opencv.org/4.4.0/df/dac/group__photo__render.html#gae5930dd822c713b36f8529b21ddebd0c
https://www.learnopencv.com/non-photorealistic-rendering-using-opencv-python-c/
オフホワイト×ナイキのスニーカーのフリー素材