Pythonを使用すると、スケッチ画像を簡単に生成できます。スケッチ画像は、シンプルで美しい芸術的な効果を作り出すことができ、Pythonの豊富なライブラリを活用して、プログラミングの基礎知識があれば誰でも簡単に作成できます。
必要なライブラリ
スケッチ画像を作成するには、Pythonで以下のライブラリを使用する必要があります。
- OpenCV
- NumPy
- Matplotlib
これらのライブラリをインストールするために、ターミナルに以下のコマンドを入力します。
pip install opencv-python
pip install numpy
pip install matplotlib
スケッチ画像を生成する方法
以下のPythonコードを使用して、スケッチ画像を生成することができます。
import cv2
import numpy as np
from matplotlib import pyplot as plt
img = cv2.imread('input_image.jpg', cv2.IMREAD_GRAYSCALE)
# 画像の輪郭を検出する
edges = cv2.Canny(img, 100, 200)
# 画像を二値化する
ret, threshold = cv2.threshold(edges, 127, 255, cv2.THRESH_BINARY_INV)
# ブラー処理を適用する
blur = cv2.medianBlur(threshold, 3)
# スケッチ画像を生成する
sketch = cv2.adaptiveThreshold(blur, 255, cv2.ADAPTIVE_THRESH_MEAN_C, cv2.THRESH_BINARY, 9, 9)
# 結果を表示する
plt.subplot(121), plt.imshow(img, cmap='gray')
plt.title('Original Image'), plt.xticks([]), plt.yticks([])
plt.subplot(122), plt.imshow(sketch, cmap='gray')
plt.title('Sketch Image'), plt.xticks([]), plt.yticks([])
plt.show()
このコードでは、まずcv2.imreadを使用して、スケッチ画像を生成する元となる画像を読み込みます。その後、cv2.Cannyを使用して画像の輪郭を検出し、cv2.thresholdを使用して画像を二値化します。その後、cv2.medianBlurを使用してブラー処理を適用し、cv2.adaptiveThresholdを使用してスケッチ画像を生成します。最後に、Matplotlibを使用して元の画像とスケッチ画像を表示します。
おわりに
Pythonを使用してスケッチ画像を生成する方法について説明しました。この技術を使うことで、美しい芸術的な効果を簡単に作り出すことができます。是非、試してみてください!