https://github.com/willbrennan/skindetector
A Python based skin detection system using OpenCV
https://github.com/willbrennan/skindetector
computer-vision detection opencv python skin-detection skin-segmentation
Last synced: 12 months ago
JSON representation
A Python based skin detection system using OpenCV
- Host: GitHub
- URL: https://github.com/willbrennan/skindetector
- Owner: WillBrennan
- License: mit
- Created: 2015-03-15T14:50:06.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2021-07-26T19:30:59.000Z (almost 5 years ago)
- Last Synced: 2025-04-02T01:11:27.040Z (about 1 year ago)
- Topics: computer-vision, detection, opencv, python, skin-detection, skin-segmentation
- Language: Python
- Size: 1.93 MB
- Stars: 170
- Watchers: 7
- Forks: 44
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
# SkinDetector
[](https://travis-ci.org/WillBrennan/SkinDetector)
# This project is depreciated and has been replaced by [SemanticSegmentation](https://github.com/WillBrennan/SemanticSegmentation)!!!!
# Or [ObjectDetection](https://github.com/WillBrennan/ObjectDetection) if you want to find instances of skin!
This is a high-speed python based skin detection system using OpenCV, it is done using adaptive thresholding, reference
papers can be found below. It is designed for processing VGA sized images in real time for Gesture Control.
## Quick Start
Getting the app to run is pretty easy. This script will not [install OpenCV](http://docs.opencv.org/doc/tutorials/introduction/linux_install/linux_install.html).
However to install the rest of the project dependencies and run the demo script use the following commands;
```bash
# Clone the repo
git clone https://github.com/WillBrennan/SkinDetector && cd SkinDetector
make install
python FromFile.py --display
```
## Usage
```python
import cv2
import skin_detector
img_path = raw_input("Please Enter Image Path")
image = cv2.imread(img_path)
mask = skin_detector.process(image)
cv2.imshow("input", image)
cv2.imshow("mask", mask)
cv2.waitKey(0)
```
## Demonstration

## Based Upon
This repo is based upon the paper;
- Skin Segmentation Using Multiple Thresholds (2003) - http://www.ivl.disco.unimib.it/papers2003/EI06-EI109%20Skin-paper.pdf
. Which is no longer accessiable; its similar to the technique used in the more modern paper, [Skin color segmentation using multi-color space threshold](https://www.semanticscholar.org/paper/Skin-color-segmentation-using-multi-color-space-Rahmat-Chairunnisa/c06873e619c679fd1aa7648a6e402a7d57ea0e20?tab=abstract&citingPapersSort=is-influential&citingPapersLimit=10&citingPapersOffset=0&year%5B0%5D=&year%5B1%5D=&citedPapersSort=is-influential&citedPapersLimit=10&citedPapersOffset=10).