source: internals/2016/aptoideimagesdetector/trunk/init.txt @ 16289

Last change on this file since 16289 was 16289, checked in by dferreira, 3 years ago

Initial content. All the tests done to three open-source platrofms.

  • Property svn:executable set to *
File size: 11.7 KB
Line 
1Algorithmia (http://www.kdnuggets.com/2016/06/algorithmia-improving-nudity-detection-nsfw-image-recognition.html):
2- Starts by indentifying the face and nose.
3- Draw a polygon in the face.
4- Compare the tone in the face with outside the polygon.
5
6NOTE: only works in photographs with faces.
7
8- Illustration2Vec may be useful to analise images!
9
10Photos (All with Creative Commons Licence) :
11NN:
121) https://www.flickr.com/photos/mini_malist/9727255983/in/photolist-fPyJj4-5o9NMJ-mH9K6-asi7MW-dqsH3W-8u4JYz-bK6BTe-9vMqbx-9vQ8ds-5ak8gg-dqbotU-pop1mG-do9Kcg-8qcf1w-dnEsEX-6ZUuJu-GHzqtC-f5QY4G-byxKfj-9D5kH8-atdBsF-cqd9Cu-9U1Tk6-pKgE7p-dPX9yr-BUgqb-ef22Vd-ayjeFA-pSsoCx-8Pm1PL-9abhAB-ssgXYw-9QtCo8-4giSYN-dABGVR-dAHbq9-8iQTcf-5G1LyS-amAeNW-rj3MJj-fkjifC-pkMoAQ-hLThfC-fBco2q-fLQ5H7-oo3hLi-nCqgg8-2JJCu-av2uz-7EM6za
132) https://www.flickr.com/photos/alfonsojimenez/2876108276/in/photolist-5o9NMJ-mH9K6-asi7MW-dqsH3W-8u4JYz-bK6BTe-9vMqbx-9vQ8ds-5ak8gg-dqbotU-pop1mG-do9Kcg-8qcf1w-dnEsEX-6ZUuJu-GHzqtC-f5QY4G-byxKfj-9D5kH8-atdBsF-cqd9Cu-9U1Tk6-pKgE7p-dPX9yr-BUgqb-ef22Vd-ayjeFA-pSsoCx-8Pm1PL-9abhAB-ssgXYw-9QtCo8-4giSYN-dABGVR-dAHbq9-8iQTcf-5G1LyS-amAeNW-rj3MJj-fkjifC-pkMoAQ-hLThfC-fBco2q-fLQ5H7-oo3hLi-nCqgg8-2JJCu-av2uz-7EM6za-6qWnNB
143) https://www.flickr.com/photos/orangeacid/234358923/in/photolist-mH9K6-asi7MW-dqsH3W-8u4JYz-bK6BTe-9vMqbx-9vQ8ds-5ak8gg-dqbotU-pop1mG-do9Kcg-8qcf1w-dnEsEX-6ZUuJu-GHzqtC-f5QY4G-byxKfj-9D5kH8-atdBsF-cqd9Cu-9U1Tk6-pKgE7p-dPX9yr-BUgqb-ef22Vd-ayjeFA-pSsoCx-8Pm1PL-9abhAB-ssgXYw-9QtCo8-4giSYN-dABGVR-dAHbq9-8iQTcf-5G1LyS-amAeNW-rj3MJj-fkjifC-pkMoAQ-hLThfC-fBco2q-fLQ5H7-oo3hLi-nCqgg8-2JJCu-av2uz-7EM6za-6qWnNB-5WUHPE
154) https://www.flickr.com/photos/tyronedaryl/7051273279/in/photolist-bK6BTe-9vMqbx-9vQ8ds-5ak8gg-dqbotU-pop1mG-do9Kcg-8qcf1w-dnEsEX-6ZUuJu-GHzqtC-f5QY4G-byxKfj-9D5kH8-atdBsF-cqd9Cu-9U1Tk6-pKgE7p-dPX9yr-BUgqb-ef22Vd-ayjeFA-pSsoCx-8Pm1PL-9abhAB-ssgXYw-9QtCo8-4giSYN-dABGVR-dAHbq9-8iQTcf-5G1LyS-amAeNW-rj3MJj-fkjifC-pkMoAQ-hLThfC-fBco2q-fLQ5H7-oo3hLi-nCqgg8-2JJCu-av2uz-7EM6za-6qWnNB-5WUHPE-egsvZu-98c2yM-hLTisN-egmMj8
165) https://www.flickr.com/photos/pustovit/14561150953/in/photolist-obHGSM-fPyJj4-5o9NMJ-mH9K6-asi7MW-dqsH3W-8u4JYz-bK6BTe-9vMqbx-9vQ8ds-5ak8gg-dqbotU-pop1mG-do9Kcg-8qcf1w-dnEsEX-6ZUuJu-GHzqtC-f5QY4G-byxKfj-9D5kH8-atdBsF-cqd9Cu-9U1Tk6-pKgE7p-dPX9yr-BUgqb-ef22Vd-ayjeFA-pSsoCx-8Pm1PL-9abhAB-ssgXYw-9QtCo8-4giSYN-dABGVR-dAHbq9-8iQTcf-5G1LyS-amAeNW-rj3MJj-fkjifC-pkMoAQ-hLThfC-fBco2q-fLQ5H7-oo3hLi-nCqgg8-2JJCu-av2uz
176) https://www.flickr.com/photos/hotlantavoyeur/7493890724/in/photolist-cqd9Cu-9U1Tk6-pKgE7p-dPX9yr-BUgqb-ef22Vd-ayjeFA-pSsoCx-8Pm1PL-9abhAB-ssgXYw-9QtCo8-4giSYN-dABGVR-dAHbq9-8iQTcf-5G1LyS-amAeNW-rj3MJj-fkjifC-pkMoAQ-hLThfC-fBco2q-fLQ5H7-oo3hLi-nCqgg8-2JJCu-av2uz-7EM6za-6qWnNB-5WUHPE-egsvZu-98c2yM-hLTisN-egmMj8-9ZAwS1-2uMHKw-6XrQzV-ehvAp7-qndD46-dm3pzj-qneZTP-g6pn3G-5SJPd8-b96MPH-acz38Q-6XrQBk-fHAuKp-9QtBJX-6u8xDP
187) https://www.flickr.com/photos/clickr88/5799436363/in/photolist-9QtCo8-4giSYN-dABGVR-dAHbq9-8iQTcf-5G1LyS-amAeNW-rj3MJj-fkjifC-pkMoAQ-hLThfC-fBco2q-fLQ5H7-oo3hLi-nCqgg8-2JJCu-av2uz-7EM6za-6qWnNB-5WUHPE-egsvZu-98c2yM-hLTisN-egmMj8-9ZAwS1-2uMHKw-6XrQzV-ehvAp7-qndD46-dm3pzj-qneZTP-g6pn3G-5SJPd8-b96MPH-acz38Q-6XrQBk-fHAuKp-9QtBJX-6u8xDP-cwmUdy-63dq4W-HvnoUy-cwmVBY-obMoGG-9PFqt2-qP4vGF-ehb7Pi-9Z1oBp-e1QyMc-skLAU1
198) https://www.flickr.com/photos/davidrosenphotography/15585869875/in/photolist-pKgE7p-dPX9yr-BUgqb-ef22Vd-ayjeFA-pSsoCx-8Pm1PL-9abhAB-ssgXYw-9QtCo8-4giSYN-dABGVR-dAHbq9-8iQTcf-5G1LyS-amAeNW-rj3MJj-fkjifC-pkMoAQ-hLThfC-fBco2q-fLQ5H7-oo3hLi-nCqgg8-2JJCu-av2uz-7EM6za-6qWnNB-5WUHPE-egsvZu-98c2yM-hLTisN-egmMj8-9ZAwS1-2uMHKw-6XrQzV-ehvAp7-qndD46-dm3pzj-qneZTP-g6pn3G-5SJPd8-b96MPH-acz38Q-6XrQBk-fHAuKp-9QtBJX-6u8xDP-cwmUdy-63dq4W
209) https://www.flickr.com/photos/rnavarrate1896/18942379260/in/photolist-uRSDpS-cwmWG3-9vMnXK-q81zHx-o7fwHw-9zSuQ7-jTnyF-bKzndD-85GDZz-at3H5J-9zStBq-AcVjA-5C98UK-m1eJK-5HLJf5-dpSMV9-oLUg6B-hLTgbJ-fBcqms-cAheUQ-nQpSiF-cwmUAo-azFTYw-9vQrFU-cwmW8W-aEzujP-nds1DY-9vMmti-9QtC9i-egmsEV-e97TzG-ecDfCH-sfSk1A-2M11YL-egsnFf-fNN1fP-q8Z4th-ecDfD6-f3p6Ks-s6hGNF-vJiHWi-qzCxL2-d8whky-nUr5jm-sjNZAx-5f9sDn-8wQwhq-epYt6b-aJTaiV-cqcC7o
21
22N:
231) https://www.flickr.com/photos/pe_wu/11009643566/in/photolist-hLTisN-egmMj8-9ZAwS1-2uMHKw-6XrQzV-ehvAp7-qndD46-dm3pzj-qneZTP-g6pn3G-5SJPd8-b96MPH-acz38Q-6XrQBk-fHAuKp-9QtBJX-6u8xDP-cwmUdy-63dq4W-HvnoUy-cwmVBY-obMoGG-9PFqt2-qP4vGF-ehb7Pi-9Z1oBp-e1QyMc-skLAU1-7PUJJC-cwmUKA-cwmUo9-efkoWU-cwmWmC-g6pzgC-cwmVgJ-eRgeyT-ch6DWJ-4UwqRU-9ycQZT-5rzUpm-dqbjBw-6NNgZ6-pmKeUV-uRSDpS-cwmWG3-9vMnXK-q81zHx-o7fwHw-9zSuQ7-jTnyF
242) https://www.flickr.com/photos/walter_anna/3269616720/in/photolist-5YVD95-tXXtM-qPcrRf-a2KSV5-eLXBZh-3vh3qD-qwSLzi-bsJFiy-5YRqgx-4TgqS4-5z4D1S-jC2Be-5YVBEd-73997b-fixG72-4B1hPB-4TkEuW-eDcDdZ-5YVA8A-s29bwi-5YVDpd-5YRoe8-qPPyXh-5YRnWi-5YRqti-f27x9q-6AKhix-f2uZoj-pzEk-7KALv-d2T4J5-dvRXsN-bsJFoN-9a3ZL-qEx5G4-bFDxFr-3b97sp-bCNn7e-qZckS7-bsJFzw-4vmqFA-72cgCs-bFDy3T-qqixpz-dBieXy-5s5Fem-5YRrGZ-qo8XBw-5YVDB1-oBcDP2
253) https://www.flickr.com/photos/walter_anna/3268792973/in/photolist-5YRqgx-4TgqS4-5z4D1S-jC2Be-5YVBEd-73997b-fixG72-4B1hPB-4TkEuW-eDcDdZ-5YVA8A-s29bwi-5YVDpd-5YRoe8-qPPyXh-5YRnWi-5YRqti-f27x9q-6AKhix-f2uZoj-pzEk-7KALv-d2T4J5-dvRXsN-bsJFoN-9a3ZL-qEx5G4-bFDxFr-3b97sp-bCNn7e-qZckS7-bsJFzw-4vmqFA-72cgCs-bFDy3T-qqixpz-dBieXy-5s5Fem-5YRrGZ-qo8XBw-5YVDB1-oBcDP2-bsJFdj-gLErgs-5MQuoc-aFMf22-3b97n2-2sKGoa-3bdBGu-3b96MZ
264) https://www.flickr.com/photos/walter_anna/3269611740/in/photolist-5YVBEd-73997b-fixG72-4B1hPB-4TkEuW-eDcDdZ-5YVA8A-s29bwi-5YVDpd-5YRoe8-qPPyXh-5YRnWi-5YRqti-f27x9q-6AKhix-f2uZoj-pzEk-7KALv-d2T4J5-dvRXsN-bsJFoN-9a3ZL-qEx5G4-bFDxFr-3b97sp-bCNn7e-qZckS7-bsJFzw-4vmqFA-72cgCs-bFDy3T-qqixpz-dBieXy-5s5Fem-5YRrGZ-qo8XBw-5YVDB1-oBcDP2-bsJFdj-gLErgs-5MQuoc-aFMf22-3b97n2-2sKGoa-3bdBGu-3b96MZ-4kDcWh-4vhkFa-3eQ23-dJbwt5
275) https://www.flickr.com/photos/lunajubilee/8953619789/in/photolist-eDcDdZ-5YVA8A-s29bwi-5YVDpd-5YRoe8-qPPyXh-5YRnWi-5YRqti-f27x9q-6AKhix-f2uZoj-pzEk-7KALv-d2T4J5-dvRXsN-bsJFoN-9a3ZL-qEx5G4-bFDxFr-3b97sp-bCNn7e-qZckS7-bsJFzw-4vmqFA-72cgCs-bFDy3T-qqixpz-dBieXy-5s5Fem-5YRrGZ-qo8XBw-5YVDB1-oBcDP2-bsJFdj-gLErgs-5MQuoc-aFMf22-3b97n2-2sKGoa-3bdBGu-3b96MZ-4kDcWh-4vhkFa-3eQ23-dJbwt5-4kzaWi-4vmpbQ-q6bUoV-7JfrhB-7Jfrsa
286) https://www.flickr.com/photos/exey/14608437023/in/photolist-ofU4nR-buk6YL-qJkZBW-buk6YE-foCivM-aYh9rF-e8DEC5-dPMfnC-bmwoGf-fKZ8Kp-6e31Pp-dJxKNZ-8Rbw1b-8HWEwf-bxu8Vb-fLgihY-9H76as-ay4ig9-8NgUC9-bmGZko-at9D6q-aGeFNH-avJcXu-bmwoGo-697Ba9-oNsdfu-6hKbP8-dJxKhB-w8NqHu-afHDxT-fKZ92i-86niNM-8SGpSE-6rxfUc-9g8L21-6MaNLc-7NA27p-c2qLas-8q3nij-99CiGV-fvE2rR-fM5pq4-uHDshf-afH7St-aL1RTT-64qF5y-fMmYK7-oh5mjG-63ZKak-sHKHPh
297) https://www.flickr.com/photos/8513580@N08/16722758093/in/photolist-rtJvnp-de9S54-sqpDxE-sqwKQZ-6ayjuB-8SKKfV-6tqoJa-6pb5Fm-c6ZrNb-dxMEjm-T38j-FXyFf-v8zix-dDxaT9-dJ64PT-f27CA1-cX273L-cUeRxm-dEogqP-f1Sp2a-f1Sk1c-aFDF7g-oDFV9u-4h5Pr-4kDcYd-de9S3T-oCft2X-s95G6M-rtydYy-yncsk-7RAJNX-s99Z8e-sqz9rB-bE3gc1-qaBR4P-sqygGv-de9PYP-cd8SZs-6xnUjg-35WRsb-aFFeMv-GB7GHX-Y5rAS-rtzMfW-aFEUfa-oAuk3Q-s924DJ-s8VX8C-rtHtZX-8u5zog
308) https://www.flickr.com/photos/walter_anna/3268785129/in/photolist-5YRnWi-5YRqti-f27x9q-6AKhix-f2uZoj-pzEk-7KALv-d2T4J5-dvRXsN-bsJFoN-9a3ZL-qEx5G4-bFDxFr-3b97sp-bCNn7e-qZckS7-bsJFzw-4vmqFA-72cgCs-bFDy3T-qqixpz-dBieXy-5s5Fem-5YRrGZ-qo8XBw-5YVDB1-oBcDP2-bsJFdj-gLErgs-5MQuoc-aFMf22-3b97n2-2sKGoa-3bdBGu-3b96MZ-4kDcWh-4vhkFa-3eQ23-dJbwt5-4kzaWi-4vmpbQ-q6bUoV-7JfrhB-7Jfrsa-FW6Co8-mvcwTx-2sQqQL-bHbAMe-azQMSt-4kzbbB
319) https://www.flickr.com/photos/9569233@N07/3120770631/in/photolist-5KLLoc-fpZBZF-fBRj9r-2M2cbX-9vqzFw-2M2cx6-2M6zS1-fC6JdU-9uem9d-fBRqnH-fC6KNN-fBRoM2-9h95rP-fC6DWQ-2M6zCm-fC6JA5-d27YZC-2M6pTj-bujXJw-d281yh-ppzXKw-2M6CqL-G5Q6zu-bDbvTr-cA5iFE-5kh7nt-fBRitH-bntFR1-pVyCAb-oFYGmj-dJjHXB-fC6Dw9-7w7jG7-fBRiVp-fC6DCU-fBRpwv-bDbvVB-fBRrYk-bNQYd6-fC6GKy-fBRpnz-6icvQe-fC6G2E-bzWjhm-fC6JK5-qxK1jt-fBRm9F-2M2ghZ-2M2jAv-fC6CVU
3210) https://www.flickr.com/photos/kargaltsev/3974193783/in/photolist-74bMmt-2EeP6-6uwCjz-qrr8AV-rrUg9A-4kzaH4-9ZrYCS-8797oA-oCft4R-qvE9T-5BPXBr-eDTJMU-pdyySb-87NXjB-nEC5hL-2sQqkU-6ceBRV-da7GSg-8DBhPc-aFMcTB-dDrNJM-7URYKE-9U4nxZ-pSZ3U3-GvbD2N-sqw7Jv-e5xoGi-oAujZ3-ezLm86-qvE48-sqt8qM-siJ5he-dEVg2K-7h6pab-aFM6rK-6mJuVL-A7zSj-pdyfwf-om34fp-oNnR1H-7KxYvt-4q4ah2-aq7uB5-4kzaTT-4kzb4M-6ceuox-cigUts-btie4n-s8XjpU-2QE2pS
3311) https://www.flickr.com/photos/fatbellyhanger/3476410857/in/photolist-6icvQe-fC6G2E-bzWjhm-fC6JK5-qxK1jt-fBRm9F-2M2ghZ-2M2jAv-fC6CVU-fC6Fx1-G893Fp-fBRm74-fC6MGj-fBRtwH-fC6J2Q-fBRqr4-fBRpHK-fBRq14-fBRp5V-fC6Bzs-8VNw3A-fC6M4b-fC6Gqd-fC6DZd-fC6Bpw-fBRiSk-fC6LME-fBRmkK-fBRpSz-fC6M6w-fBRiLB-fC6HNu-fBRtVe-fC6LRh-fC6F8Q-fBRupk-fBRjcB-fC6Js7-fC6EKL-fBRooD-fBRpqP-fC6BRW-fBRsvz-fC6Kuf-6nXMyU-fBRpGz-fC6Ejh-fBRiZe-fBRk46-fC6Gsw
34
35Algorithm 2(An Algorithm for Nudity Detection, Rigan Ap-apid):
36
371. Scan the image starting from the upper left corner to the lower right corner.
382. For each pixel, obtain the RGB component values.
393. Calculate the corresponding Normalized RGB and HSV values from the RGB values.
404. Determine if the pixel color satisfies the parameters for being skin established by the skin color distribution model.
415. Label each pixel as skin or non-skin.
426. Calculate the percentage of skin pixels relative to the size of the image.
437. Identify connected skin pixels to form skin regions.
448. Count the number of skin regions.
459. Identify pixels belonging to the three largest skin regions.
4610. Calculate the percentage of the largest skin region relative to the image size.
4711. Identify the leftmost, the uppermost, the rightmost, and the lowermost skin pixels of the three largest skin regions. Use these points as the corner points of a bounding polygon.
4812. Calculate the area of the bounding polygon.
4913. Count the number of skin pixels within the bounding polygon.
5014. Calculate the percentage of the skin pixels within the bounding polygon relative to the area of the polygon.
5115. Calculate the average intensity of the pixels inside the bounding polygon.
5216. Classify an image as follows:
53a. If the percentage of skin pixels relative to the image size is less than 15 percent, the image is not nude. Otherwise, go to the next step.
54b. If the number of skin pixels in the largest skin region is less than 35% of the total skin count, the number of skin pixels in the second largest region is less than 30% of the total skin count and the number of skin pixels in the third largest region is less than 30 % of the total skin count, the image is not nude.
55c. If the number of skin pixels in the largest skin region is less than 45% of the total skin count, the image is not nude.
56d. If the total skin count is less than 30% of the total number of pixels in the image and the number of skin pixels within the bounding polygon is less than 55 percent of the size of the polygon, the image is not nude.
57e. If the number of skin regions is more than 60 and the average intensity within the polygon is less than 0.25, the image is not nude.
58f. Otherwise, the image is nude.
59
60
61Algorithm created by me:
621. Using Illustration2Vec, analyse images according to the tags related.
632. Give a classification (1 to 5, or different) on the probability of explicit content.
643. Mark pixel as skin or no-skin, as is written in the following paper (Detection of Pornographic Digital Images
65Jorge A. Marcial-Basilio, Gualberto Aguilar-Torres, Gabriel Sánchez-Pérez, L. Karina Toscano-
66Medina, and Héctor M. Pérez-Meana).
674. Identify connected skin pixels to form skin regions.
685. Count the number of skin regions.
696. Identify pixels belonging to the three largest skin regions.
707. Calculate the percentage of the largest skin region relative to the image size.
718. ... Other methods to improve final result
729. Analyse the two methods, each one with a rate between 1-100, according to his percentage of certainty proved empirically.
7310. Define a threshold to determine if is explicit content or not.
74
75
76Planning
Note: See TracBrowser for help on using the repository browser.