Skip to content

Instantly share code, notes, and snippets.

@symisc
Last active February 21, 2020 00:38
Show Gist options
  • Save symisc/11a496a51e114526d0b48f120b452944 to your computer and use it in GitHub Desktop.
Save symisc/11a496a51e114526d0b48f120b452944 to your computer and use it in GitHub Desktop.
Detect not suitable for work (i.e. nudity & adult) content in a given image or video frame and apply a blur filter if the NSFW score is high enough - https://pixlab.io/cmd?id=nsfw
import requests
import json
# Target Image: Change to any link (Possibly adult) you want or switch to POST if you want to upload your image directly, refer to the sample set for more info.
img = 'https://i.redd.it/oetdn9wc13by.jpg'
# Your PixLab API key that you can obtain from https://pixlab.io/dashboard
key = 'PIXLAB_API_KEY'
# Censor an image according to its NSFW score
req = requests.get('https://api.pixlab.io/nsfw',params={'img':img,'key':key})
reply = req.json()
if reply['status'] != 200:
print (reply['error'])
elif reply['score'] < 0.5 :
print ("No adult content were detected on this picture")
else:
# Highly NSFW picture
print ("Censuring NSFW picture...")
# Call blur with the highest possible radius and sigma
req = requests.get('https://api.pixlab.io/blur',params={'img':img,'key':key,'rad':50,'sig':30})
reply = req.json()
if reply['status'] != 200:
print (reply['error'])
else:
print ("Blurred image link: "+ reply['link'])
@symisc
Copy link
Author

symisc commented Nov 3, 2019

Detect not suitable for work (i.e. nudity & adult) content in a given image or video frame. NSFW is of particular interest, if mixed with some media processing API endpoints like blur, encrypt or mogrify to censor images on the fly according to their nsfw score. This can help the developer automate things such as filtering user's uploads.

for additional information, please refer to the official documentation at https://pixlab.io/cmd?id=nsfw

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment