Skip to content

Image Recognition Bypass for Machine Learning

We can trick image recognizer or classifier by adding filters or obfuscating an image.

Blurring

from PIL import Image
from PIL import ImageFilter

img = Image.open("example.png")

# Box blur
img1 = img.filter(ImageFilter.BoxBlur(5))
# Gaussian blur
img2 = img.filter(ImageFilter.GaussianBlur(5))
# Median filter
img3 = img.filter(ImageFilter.MedianFilter(size=5))
# Rank filter
img4 = img.filter(ImageFilter.RankFilter(size=13, rank=5))

Cropping/Rotating

from PIL import Image
from PIL import ImageFilter

img = Image.open("example.png")
img = img.resize((512, 512))

img1 = img.crop((0, 0, 300, 280)).rotate(-60)