2020年1月1日水曜日

OpenCVでスクリーントーンを作成する

漫画は主に黒と白の二色で表現するため、細かい色の濃淡を表現するためにスクリーントーンを切り貼りする。今回、ドット柄のスクリーントーンを OpenCV で作成してみる。

まずスクリーントーンの大きさの白紙を作る。ここでは縦 size_y、横 size_x とする。
import numpy as np

img = np.full((size_y, size_x), 255, np.uint8)
interval をドットとドットの間の間隔、radius をドットの半径とする。起点となる左上のドットの中心を (interval+radius, interval+radius) としたとき、ドット柄は以下のように作成することができる。
import cv2

tmp_y = interval+radius
while(tmp_y < size_y):
    tmp_x = interval+radius
    while(tmp_x < size_x):
        cv2.circle(img, (tmp_x, tmp_y), radius, (0, 0, 0), -1)
        tmp_x += interval+2*radius
    tmp_y += interval+2*radius

0 件のコメント:

コメントを投稿