AdityaTheDev / NudityDetection-Using-Deeplearning

Nudity/pornography detection using deeplearning. This model is trained using pretrained VGG-16. To know more about this check the readme file below

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Disclaimer

The following content contains harmful materials that may be harmful or tramatizing to some audience. Viewers discretion is advised.

Introduction

According to a recent survey by Pew Research Center, nearly 95% of adolescents have access to the internet and almost half (45%) of them are constantly online . The internet provides great advantages, such as information sharing. Yet, it also introduces numerous problems dealing with accessing and sharing of explicit content, including sexting, cyberbullying, and child pornography . Prolific sharing, combined with the permanence of digitally captured nudity, is particularly problematic for minors. While the dissemination of child pornography is a crime punishable by law , such momentary mistakes could also cause physical harm and prolonged psychological problems for adolescents, including sexual predation, emotional trauma, cyberbullying, and even suicidal behaviors. It is estimated that about 15% of teens on Snapchat report having received sexually explicit photos. In addition, 4% of cellphone-owning teens, ages 12-25, report having sent sexually suggestive, nude, or nearly nude images of themselves to someone else via text messaging. Sexting behaviors make adolescents vulnerable to a number of offline risks, such as bullying and sexual predation . These types of teen sexting behaviors can be perpetuated by mobile technologies and by several direct messaging applications available on smartphone devices, such as Kik, Snapchat, and Instagram . Unfortunately, such activities often fall under the jurisdiction of child pornography laws. Child pornography is illegal, and the federal law states the following: “A picture of a naked child may constitute illegal child pornography if it is sufficiently sexually suggestive. Additionally, the age of consent for sexual activity in a given state is irrelevant; any depiction of a minor under 18 years of age engaging in sexually explicit conduct is illegal” . So, while sexting behaviors may seem innocent and exploratory to teens, in reality, they can have severe negative consequences.

Working

After construction of the nudity dataset, dataset images are categorized into two groups of nudity and non-nudity. Later these classes of images are used as input to the pretrained model(VGG-16) designed to obtain the abstract and high-level presentation of the images. The system uses these image representations as input into a binary classifier model for the training purpose. Finally, the testing images are classified based on the probability values outputted by the trained CNN model. Deep learning models are comprised of multiple computational layers which enable the learning of abstract representation of input data in and end-to-end and iterative manner. Owing to the remarkable power of Convolutional Neural Networks (CNN) – a branch of DL techniques – state-of-the-art performances are recently obtained in all tasks of visual recognition such as classification, detection, recognition, or segmentation. CNNs are designed to automatically identify and detect the patterns in the visual contents as well as speech (or any type of 2D, 3D, and 4D data), and have outperformed the human accuracy and speed in many recognition tasks.

Layers in DeepLearning model

A typical CNN model is comprised of different computational layers some with learnable parameters, and some solely mathematical operations with different purposes. In the following, these layers and their functions are explained. • Convolutional Layer: performs a set of randomly initialized 2D convolutions in order to increase the depth of the input image or the previous layer. • Batch Normalization: speeds up the training process by normalizing channels of the input image or previous layer. • Rectified Linear Unit (ReLU): performs thresholding on all channels of the input image or previous layer to add non-linearity. • Max Pooling Layer: applies down-sizing on the input image or previous layer and generates an output of the decreased width and height but same depth. • Fully Connected Layer (FC): multiplies all the values of the input image or previous layer by its weights. • Sigmoid Layer: assigns the values in an FC layer to their corresponding probability values.

Conclusion

This model can detect nudity with an accuracy of 93%. It classifies nudity accurately, for instance it knows the difference between humans wearing short dresses and naked. Hence, it should be integrated to various platforms and social media sites to avoid illicit content and to ban Pornography.

About

Nudity/pornography detection using deeplearning. This model is trained using pretrained VGG-16. To know more about this check the readme file below

License:GNU General Public License v3.0


Languages

Language:Jupyter Notebook 100.0%