SciELO - Scientific Electronic Library Online

 
 issue64RS(n,k) Encoder based on LFCSSensitive analysis of the inlet boundary conditions on the turbine 99 draft tube author indexsubject indexarticles search
Home Pagealphabetic serial listing  

Services on Demand

Journal

Article

Indicators

Related links

  • On index processCited by Google
  • Have no similar articlesSimilars in SciELO
  • On index processSimilars in Google

Share


Revista Facultad de Ingeniería Universidad de Antioquia

Print version ISSN 0120-6230

Rev.fac.ing.univ. Antioquia  no.64 Medellín July/Sept. 2012

 

ARTÍCULO ORIGINAL

 

Novedosa técnica para la detección de imágenes pornográficas empleando modelos de color HSV y YCbCr

 

Novel method for pornographic image detection using HSV and YCbCr color models

 

 

Jorge A. Marcial Basilio, Gualberto Aguilar Torres*, Gabriel Sánchez Pérez, Karina Toscano Medina, Héctor M. Pérez Meana

Escuela Superior de Ingeniería Mecánica y Eléctrica Unidad Culhuacan. IPN. Coyoacán, México D.F.

*Autor de correspondencia: teléfono: + 52 + 55 + 57 29 6000, ext. 73206, correo electrónico: gaguilar@ipn.mx (G. Aguilar)

 

(Recibido el 12 de enero de 2012. Aceptado el 28 de agosto de 2012)

 

 


Resumen

En este trabajo un novedoso método para la detección de imágenes con contenido explícito es propuesto usando la transformación del modelo de color RGB al modelo HSV ó YCbCr, el cual es el formato más común para imágenes que existen en Internet, además se propone el uso de un umbral para la detección de piel aplicando los modelos de color HSV y YCbCr. Aplicando el umbral propuesto la imagen es segmentada, una vez segmentada la imagen se calcula la cantidad de piel localizada en dicha imagen. Los resultados obtenidos usando el sistema propuesto son comparados con dos programas que cumplen con el mismo objetivo, el Forensic Toolkit 3.1 ''Explicit Image Detection'' (FTK 3.1 EID) y el ''Paraben's Porn Detection Stick'', los cuales son dos de las soluciones más empleadas para la detección de esta clase de imágenes. Los resultados reportados en este trabajo se obtuvieron utilizando tres conjuntos de imágenes, cada uno de los cuales consta de 800 imágenes elegidas aleatoriamente, de las cuales 400 son imágenes naturales y el resto son imágenes con contenido explícito, las cuales fueron ocupadas para probar el sistema propuesto y las dos herramientas comerciales . El sistema propuesto obtuvo un 78,75% de reconocimiento, 28% de falsos positivos y 14,50% de falsos negativos, el programa FTK 3.1 Explicit Image Detection logró un 72,12% de reconocimiento, 38,50% de falsos positivos y 17,25% de falsos negativos. Paraben's Porn Detection Stick obtuvo 74,25% de reconocimiento con 16% de falsos positivos y 35,50% de falsos negativos. Finalmente se pudo comprobar que el sistema propuesto logra detectar las imágenes bajo estudio mejor, que dos de las herramientas de software comerciales, más usadas por investigadores forenses, por lo que el método propuesto puede aplicarse para análisis forense informático o en detección de imágenes pornográficas almacenadas en dispositivos de almacenamiento masivo.

Palabras clave: Contenido explícito, reconocimiento de patrones, detección de piel, modelos de color HSV y YcbCr, análisis forense informático


Abstract

In this paper a novel method to explicit content or pornographic images detection is proposed, using the transformation from RGB to HSV or YCbCr color model, which is the most usual format to images that exists on Internet, moreover the using of a threshold to skin detection applying the color models HSV and YCbCr is proposed. Using the proposed threshold the image is segmented, once the image segmented, the skin quantity localized in that image is calculated. The obtained results using the proposed system are compared with two programs which carry out with the same goal, the Forensic Toolkit 3.1 Explicit Image Detection (FTK 3.1 EID) and the Paraben's Porn Detection Stick that are two the most commercials solutions to pornographic images detection. The reported results in this paper were obtained using three sets of images, each one of them consist of 800 images choosing randomly which 400 are natural images and the rest are explicit content images, this sets were used to probe the proposed system and the two tools commercials. The proposed system achieved a 78,75% of recognizing, 28% of false positives and 14,50% of false negatives, the software FTK 3.1 Explicit Image Detection obtained 72,12% of recognizing, 38,50% of false positives and 17,25% of false negatives. Paraben's Porn Detection Stick achieved 74,25% of recognizing with 16% of false positives and 35,50% of false negatives. Finally can be prove that the proposed system be able to detect the images under study better than two of the software solutions more using for forensic researchers, for this reason the proposed method can be applied to computer forensics or in detection of pornographic images stored on mass storage devices.

Keywords: Explicit content, pattern recognition, skin detection, the HSV and YCbCr color models, computer forensics


 

 

Introducción

Con el rápido crecimiento de la Internet y el fácil acceso a una computadora con conexión a ella, las personas tienen cada vez más opciones para poder acceder a éste recurso para buscar o publicar información. Por esta razón los niños y jóvenes deben ser prevenidos sobre el acceso a información clasificada como para adultos, por ejemplo: imágenes pornográficas, con contenido explícitamente sexual, con muertos, heridos, etc. En México los niños de 6 a 11 años de edad, así como los jóvenes entre 12 y 17 años, son los usuarios más comunes de Internet [1], ya que son más del 37% del total de los usuarios, según el censo realizado por el Instituto Nacional de Estadística Geografía e Informática (INEGI) de México, como se observa en la figura 1, por lo que éste sector de la población está expuesto con mayor frecuencia a observar imágenes con contenido explícito. Por esta razón existe una gran necesidad de desarrollar algoritmos que puedan detectar esta clase de imágenes, y que sean clasificadas previamente antes de que un niño o adolescente tenga acceso a ellas.

Filtrar imágenes con contenido clasificado como para adultos es muy importante para los principales programas de navegación en Internet. Para evitar contenido ofensivo en los resultados de una búsqueda, se emplean filtros que en muchos de los casos no logran bloquear este tipo de contenido, ya que dichas búsquedas se realizan empleando como índice de la propia búsqueda una palabra común y corriente, sin que esta palabra tenga restricciones [2]. En la actualidad hay distintas maneras de bloquear las imágenes pornográficas en las computadoras, como por ejemplo: bloquear sitios no deseados o identificar las imágenes que muestran contenido explícito. Existen programas en el mercado que permiten bloquear sitios en Internet con contenido explícito u ofensivo por mencionar algunos tenemos: CyberPatrol, ContentProtect, NetNanny, Family.net y K9 Web Protection [3]. Todos estos programas ofrecen a los padres de familia un control sobre lo que pueden buscar y observar sus hijos en Internet. Otra solución son los programas que detectan las imágenes con contenido explícito dentro de la computadora tal como: Surfrecon, Paraben's Porn Detection Stick [4], y la compañía Access Data la cual ofrece un software para informática forense llamado Forensic Toolkit 3.1 (FTK 3.1) [5], este software tiene una herramienta llamada Explicit Image Detection que se utiliza para la búsqueda de imágenes con contenido explícito.

Dentro del estado del arte sobre este tema, existen artículos científicos que abordan este problema como el publicaron que desarrollaron Forsyth y Fleck [6] quienes desarrollaron un software para detectar personas desnudas, Wiederhold y Wang [7] propusieron un algoritmo para el reconocimiento de imágenes con contenido censurable, Li Chen et al. [8] diseñaron un detector de piel basado en una red neuronal, Fuangkhon y Tanprasert [9] desarrollaron un sistema para detectar imágenes obscenas usando la detección de pezones.

En el presente trabajo un novedoso algoritmo para la detección de imágenes con contenido explícito es propuesto usando dos distintos modelos de color, HSV y YCbCr, los resultados obtenidos son comparados con dos soluciones comerciales una es el software Paraben's Porn Deteccion Stick [4] y la otra es Access Data FTK 3.1 Explicit Image Detection [10]. El algoritmo está basado en procesamiento de imágenes para detectar piel, cuantificarla y finalmente una etapa de decisión. Primeramente la imagen es transformada al modelo de color HSV o YCbCr con el propósito de discriminar objetos que estén presentes en la imagen que no representen piel humana. Después se usa un umbral para la detección de piel, el cuál fue calculado con anterioridad para ambos modelos de color. Seguidamente, usando este umbral la imagen es filtrada para segmentar a la persona o personas que aparecen en la imagen. Por último, la cantidad de pixeles con características que sean como piel es calculada y así poder determinar si la imagen es o no una imagen con contenido explícito.

Este trabajo está organizado como sigue, el sistema propuesto, así como la transformación de una imagen del modelo de color RGB al modelo HSV y YCbCr son mostrados inicialmente. Seguidamente se presenta el cálculo del umbral para los modelos de color HSV y YCbCr. Posteriormente la detección de piel es mostrada. La clasificación de imágenes es expuesta posteriormente junto con los resultados obtenidos, que son presentados como una comparativa entre el sistema propuesto usando los dos modelos de color, y las dos soluciones FTK 3.1 Explicit Image Detection y Paraben's Porn Detection Stick, finalmente las conclusiones son dadas.

 

Sistema Propuesto

El sistema propuesto consta de dos módulos, el primero se usa principalmente para la búsqueda del umbral en el cual los píxeles pueden ser clasificados como piel, y el segundo es el módulo de prueba, que se utiliza para la búsqueda de imágenes con contenido explícito dentro de un grupo de imágenes almacenadas en la computadora. El diagrama a bloques general del sistema propuesto se muestra en la figura 2. El módulo de prueba tiene 4 fases: a) la transformación de la imagen del modelo RGB al HSV o YCbCr. b) una vez transformada la imagen, se filtra usando el umbral encontrado para detectar los pixeles que representen piel. c) después se cuantifican los píxeles encontrados usando el umbral estimado para contar el número de píxeles que fueron clasificados como piel. Finalmente en la etapa de decisión las imágenes son clasificadas por el porcentaje de piel que contiene la imagen.

Transformación

HSV

El modelo de color HSV obtiene el nombre de las siglas en inglés (Hue, Saturation, Value) que en español significan Tonalidad, Saturación, Valor, respectivamente; es una transformación no lineal del modelo de color RGB, y los colores son una combinación de los tres valores: Tonalidad, Saturación o cantidad de color, y su valor.

Para convertir una imagen del modelo RGB al HSV se usan las expresiones matemáticas (1) al (3), las cuales se muestran a continuación:

La figura 3 muestra un ejemplo de la transformación al modelo HSV de una imagen en el modelo RGB.

YCbCr

El modelo de color YCbCr es generalmente usado en video digital y procesamiento de imágenes. En este formato, la información de la luminancia está representada por una sola componente, Y, y la información de color es almacenada como dos componentes de la diferencia de color, Cb y Cr. La componente de Crominancia azul o Cb es la diferencia entre la componente azul y el valor de referencia, y la componente de Crominancia roja o Cr es la diferencia entre la componente roja y el valor de referencia. El valor de la componente de luminancia Y se encuentra en un rango nominal de 16 - 235; Cb y Cr están definidas en un rango nominal de 16 - 240.

La matriz utilizada para convertir del modelo de color RGB al YCbCr es mostrada en (4):

La figura 4 muestra un ejemplo de la transformación de una imagen en RGB a YCbCr.

Cálculo del umbral

Análisis de Histogramas HSV

I. Aldasouqui y M. Hassan [11] diseñaron un algoritmo para la detección de rostros usando este modelo de color.

Un análisis de histogramas en el modelo HSV fue realizado para determinar el umbral. Las figuras 5(a y b) son imágenes de personas con distintos tonos de piel, y sus respectivos histogramas en cada una de sus componentes. Estos histogramas fueron necesarios para identificar el rango de valores para nuestro propósito, i.e. segmentar una persona o personas dentro de una imagen.

Los histogramas observados anteriormente muestran los valores que tienen las imágenes de personas con tonos de piel diferentes. Después de un análisis extenso el umbral encontrado se muestra a continuación en (5).

Análisis de Histogramas YCbCr

G. Kukharev et al. determinaron que el rango de valores correspondiente a la piel [12] está dado por (6).

N. Sarris et al. [13] solamente utilizaron las componentes de crominancia, Cb y Cr, para detectar rostros en imágenes de color; V. Neagoe y M. Neghina [14] propusieron un sistema de detección de rostros usando el modelo YCbCr. Chai y Ngan [15] han desarrollado un algoritmo que explota las características espaciales de color de la piel humana, de este trabajo se deriva un mapa de color de la piel y se utilizan las componentes de crominancia de la imagen de entrada para detectar los píxeles que parecen ser piel.

Debido a que los rangos de valores dados en los distintos trabajos, sirven para la detección de piel de personas Caucásicas, en este trabajo se realizó un análisis de los histogramas de las componentes de crominancia para determinar un rango de valores capaz de reconocer las secciones de piel que pudiera tener una imagen, ya sea de una persona con piel blanca o con piel de color negro.

La figura 6(a y b) muestran los histogramas de una imagen de una persona con piel blanca y otra con piel morena, respectivamente.

 

Como se observa en las imágenes anteriores, el histograma de la componente de luminancia es muy diferente en ambos casos, por este motivo sólo se tomaron en cuenta los valores de las componentes de crominancia, Cb y Cr, después de un exhaustivo análisis, el rango óptimo para el umbral de la piel se muestra en (7).

Detección de piel

La detección puede ayudar a detectar partes del cuerpo, torso, o rostro dentro de una imagen. Últimamente muchos métodos de identificación de piel dentro de una imagen digital han sido desarrollados. El color de la piel ha demostrado ser un método útil y robusto para la detección, localización y seguimiento del rostro. Ha habido un gran número de investigadores que han estudiado el uso de la información de color para la detección de piel. Jones y Regh [16] construyeron un modelo de color usando técnicas de aprendizaje de histogramas del modelo RGB. Yang y Auhuja estimaron la función de densidad de probabilidad de la piel humana usando un modelo de mezclas Gausianas cuyos parámetros son estimados a través del algoritmo EM [17]. Existen otros investigadores que han desarrollado trabajos acerca de los diferentes modelos de detección de piel como: Vezhnevets et al. [18], Kakumanu et al. [19] y Kelly et al. [20].

Una vez hecha la transformación de modelo color, la etapa siguiente es utilizar los umbrales propuestos en este trabajo, que son (6) y (7) para llevar a cabo la detección de piel. La tabla 1 muestra algunos ejemplos de la detección de piel usando ambos umbrales con imágenes de distintas personas con tonos de piel diferentes.

Clasificación de Imágenes

Para determinar si la imagen tiene contenido explícito o pornográfico, el Cuantificador de Píxeles de Piel cuenta los píxeles que en la etapa anterior detecto como algún tono de piel, después se utiliza (8) para calcular el porcentaje de piel existente y de esta manera saber si contiene contenido censurable.

Para considerar a una imagen como una imagen con contenido explícito o pornográfico, el porcentaje de piel debe de ser mayor o igual al 60%, esto debido a que la mayoría de las imágenes con contenido explícito muestran más de la mitad de las zonas de piel. La tabla 2 muestra algunos ejemplos de la clasificación de imágenes usando el sistema propuesto para clasificar las imágenes.

La detección de piel puede ser usada como la base para la detección de imágenes con contenido explícito porque existe una relación considerable entre las imágenes con grandes zonas de piel y las imágenes pornográficas o con contenido explícito.

 

Resultados

Se realizaron tres pruebas para observar el rendimiento del sistema propuesto usando diferentes imágenes que fueron obtenidas de Internet. El sistema es capaz de procesar diferentes tipos de imágenes, como imágenes de distinto tamaño, de distinto tipo de archivo (* .jpg, * .png o *.bmp) e imágenes tomadas bajo distintas condiciones de luz. Las imágenes de entrada para la realización de la prueba son clasificadas en: a) imágenes con contenido explícito e b) imágenes naturales. En las imágenes con contenido explícito, personas Asiáticas, Caucásicas, Europeas, Latinoamericanas, y personas de piel de color negro pueden ser encontradas. Una imagen natural es aquella que por su naturaleza no contiene contenido ex–plícito o pornográfico. En este tipo de imágenes podemos encontrar imágenes de distinto tipo tal como: personas vestidas, animales, plantas, au–tomóviles, dibujos animados, paisajes, etc. que también fueron obtenidas de Internet.

Para la realización de esta prueba, se dividieron las imágenes en tres conjuntos de forma aleatoria, cada uno de ellos contenía 400 imágenes con contenido explícito y 400 imágenes naturales. Para poder obtener una visión real del comportamiento del sistema propuesto, se compararon los resultados obtenidos con dos soluciones que se ofrecen en el mercado extranjero, FTK 3.1 Explicit Image Detection y Paraben's Porn Detection Stick. La figura 7 muestra los resultados de reconocimiento, que se obtiene de la detección de imágenes usando la expresión matemática mostrada en (9).

En la figura 8 se puede observar la tasa de Falsos cual se calcula usando la expresión mostrada en Positivos obtenidos de los sistemas probados, el 10.

En la figura 9 se muestra el porcentaje de falsos negativos que arrojaron los sistemas probados durante las tres pruebas realizadas, este valor se calcula usando la expresión matemática mostrada en 11.

 

Conclusiones

Este trabajo propone un algoritmo para detectar imágenes a color con contenido explícito o pornográfico, así como un umbral para la detección de piel en los dos modelos de color utilizados durante el desarrollo de este trabajo, aunque en algunas imágenes el sistema propuesto puede encontrar algunos errores debido a las condiciones de luz cuando éstas fueron tomadas, en otros casos las imágenes son modificadas por algún software especializado. Los modelos de color HSV y YCbCr son importantes métodos para poder disminuir los problemas de iluminación que pudieran tener las imágenes, esto se logra usando las tres componentes para el caso del modelo HSV, y tomando solamente las componentes de crominancia del modelo YCbCr.

El sistema propuesto obtiene una menor tasa de falsos negativos que los sistemas comerciales con los que fue comparado, esto repercute en una mejoría ya que entre menor sea esta tasa, mejor será el reconocimiento de imágenes con contenido explícito y se podrá obtener un resultado superior, aunque al buscar una menor tasa de falsos negativos se incrementa la tasa de falsos positivos todo dependerá de lo que se desee buscar.

 

References

1. INEGI. Estadísticas sobre Disponibilidad y Uso de Tecnología de Información y Comunicaciones en los Hogares. 2009. Disponible en: http://www.inegi.org.mx/prod_serv/contenidos/espanol/bvinegi/productos/encuestas/especiales/endutih/ENDUTIH_2009.pdf. Consultado el 26 de Mayo de 2012.         [ Links ]

2. J. Marcial, G. Aguila, G. Sánchez, L. Toscano, H. Pérez. Explicit Image Detection using YCbCr Space Color Model as Skin Detection. In Proc. Of 5th WSEAS Int. Conf. on Computer Engineering and Applications (CEA '11). Cancún, México. 2011. pp. 123-128.         [ Links ]

3. C. Habis, F. Krsmanovic. Explicit Image Filter. Stanford University. Stanford (USA). 2005. pp. 1-10.         [ Links ]

4. Paraben Corporation. Paraben's Porn Detection Stick.. Disponible en: http://www.paraben-sticks.com/porn-detection-stick.html. Consultado el 26 de Mayo de 2012.         [ Links ]

5. Access Data Group. Forensic Toolkit. Disponible en: http://accessdata.com/products/computer-forensics/ftk. Consultado el 26 de Mayo de 2012.         [ Links ]

6. M. Fleck, D. Forsyth, C. ''Bregler. Finding naked people''. Proceedings of European Conference on Computer Vision. Vol. 2. 1996. pp. 592-602.         [ Links ]

7. G. Wiederhold, J. Wang. ''WIPE (TM): Wavelet Image Pornography Elimination; A System for Screening Objectionable Images''. Computer Communications Journal. Vol. 21. 1998. pp. 1355-1360.         [ Links ]

8. L. Chen, J. Zhou, Z. Liu, W. Chen, G. Xiong. A Skin Detector Based on Neural Network. In IEEE 2002 International Conference on Communication, Circuits and Systems and West Sino Expositions. Muroran, Japón. 2002. pp. 615- 619.         [ Links ]

9. P. Fuangkhon, T. Tanprasert. Nipple Detection for Obscene Pictures. In Proc. Of 5th WSEAS Int. Conf. on Signal, Speech and Image Processing (SSIP '05). Corfu Island, Greece. 2005. pp. 315-320.         [ Links ]

10. Access Data Group. Forensic Toolkit Explicit Image Detection. Disponible en: http://accessdata.com/pdf/explicit-image-detection. Consultado el 26 de Mayo de 2012.         [ Links ]

11. I. Aldasouqi, M. Hassan. Human Face Detection System Using HSV. In Proc. Of 9th WSEAS Int. Conf. on Circuits, Systems, Electronics, Control & Signal Processing (CSECS'10). Atenas, Grecia. 2010. pp. 13-16.         [ Links ]

12. G. Kukharev, A. Novosielski. Visitor identification elaborating real time face recognition system. In Proc. 12th Winter School on Computer Graphics (WSCG), Plzen, República Checa. Feb. 2004. pp. 157-164.         [ Links ]

13. N. Sarris, N. Grammalidis, M. Strintzis. Detection of Faces and Facial Features in Images using a Novel Neural Network Technique. In Proc. Of WSEAS Int. Conf. on Neural Network and Applications (NNA'01). Islas Canarias, España. 2001. pp. 6361-6366.         [ Links ]

14. Victor. Neagoe, M. Neghina. Face Detection Using a Dual Cross-Validation of Chrominance/Luminance Channel Decisions and Decorrelation of the Color Space. In Proc. Of 14th WSEAS Int. Conf. on Computers. Isla Corfu, Grecia. 2010. pp. 391-396.         [ Links ]

15. D. Chai, K. Ngan. ''Face segmentation using skin- color map in videophone applications''. IEEE Trans. on Circuits Syst. Video Technol. Vol. 9, Issue 4. 1999. pp. 551-564.         [ Links ]

16. M. Jones, J. Regh. ''Statistical color models with application to skin detection''. In Proc. Of the CVPR '99. Vol. 1. 1999. pp. 1274-1280.         [ Links ]

17. M. Yang, N. Ahuja. Detecting human faces in color images. International Conference on Image Processing (ICIP). Chicago, Illinois, USA. 1998. pp. 127-130.         [ Links ]

18. V. Vezhnevets, V. Sazonov, A. Andreeva. A Survey on Pixel-based Skin Color Detection Techniques. In Proceedings of the Grapics Conference. Moscú, Rusia. 2003. pp. 85-92.         [ Links ]

19. P. Kakumanu, S. Makrogiannis, N. Bourbakis. ''A survey of skin-color modeling and detection methods''. Pattern Recognition. Vol. 40. 2007. pp. 1106-1122.         [ Links ]

20. W. Kelly, A. Donnellan, D. Molloy. Screening for Objectionable Images: A Review of Skin Detection Techniques. In Machine Vision and Image Processing Conference (IMVIP '08). Coleraine, Northern Ireland. 2008. pp. 151-158.         [ Links ]