npr.py 873 B

1234567891011121314151617181920212223242526272829303132
  1. '''
  2. OpenCV Non-Photorealistic Rendering Python Example
  3. Copyright 2015 by Satya Mallick <spmallick@gmail.com>
  4. '''
  5. import cv2
  6. # Read image
  7. im = cv2.imread("cow.jpg");
  8. # Edge preserving filter with two different flags.
  9. imout = cv2.edgePreservingFilter(im, flags=cv2.RECURS_FILTER);
  10. cv2.imwrite("edge-preserving-recursive-filter.jpg", imout);
  11. imout = cv2.edgePreservingFilter(im, flags=cv2.NORMCONV_FILTER);
  12. cv2.imwrite("edge-preserving-normalized-convolution-filter.jpg", imout);
  13. # Detail enhance filter
  14. imout = cv2.detailEnhance(im);
  15. cv2.imwrite("detail-enhance.jpg", imout);
  16. # Pencil sketch filter
  17. imout_gray, imout = cv2.pencilSketch(im, sigma_s=60, sigma_r=0.07, shade_factor=0.05);
  18. cv2.imwrite("pencil-sketch.jpg", imout_gray);
  19. cv2.imwrite("pencil-sketch-color.jpg", imout);
  20. # Stylization filter
  21. cv2.stylization(im,imout);
  22. cv2.imwrite("stylization.jpg", imout);