SlideShare a Scribd company logo
1 of 18
Download to read offline
Auro Tripathy
                  auro@shatterline.com

*Random Forests are registered trademarks of Leo Breiman and Adele Cutler
   Attributions, code and dataset location (1
    minute)
   Overview of the scheme (2 minutes)
   Refresher on Random Forest and R
    Support (2 minutes)
   Results and continuing work (1 minute)
   Q&A (1 minute and later)
ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=5651638
   R code available here; my contribution
       http://www.shatterline.com/SkinDetection.html
   Data set available here
     http://www.feeval.org/Data-sets/Skin_Colors.html
     Permission to use may be required
    All training sets organized as a two-movie
     sequence
    1. A movies sequence of frames in color
    2. A corresponding sequence of frames in binary
       black-and-white, the ground-truth
    Extract individual frames in jpeg format
     using ffmpeg, a transcoding tool
    ffmpeg -i 14.avi -f image2 -ss 1.000 -vframes 1
        14_500offset10s.jpeg

ffmpeg -i 14_gt_500frames.avi -f image2 -ss 1.000 -vframes 1
    14_gt_500frames_offset10s.jpeg
Image                       Ground-truth


The original authors used 8991 such image-pairs, the image along with
its manually annotated pixel-level ground-truth.
   Attributions, code and dataset location (1
    minute)
   Overview of the scheme (2 minutes)
   Refresher on Random Forest and R
    Support (2 minutes)
   Results and continuing work (1 minute)
   Q&A (1 minute and later)
   Skin-color classification/segmentation
   Uses Improved Hue, Saturation, Luminance
    (IHLS) color-space
   RBG values transformed to HLS
   HLS used as feature-vectors
   Original authors also experimented with
       Bayesian network,
       Multilayer Perceptron,
       SVM,
       AdaBoost (Adaptive Boosting),
       Naive Bayes,
       RBF network

“Random Forest shows the best performance in terms of accuracy,
precision and recall”
The most important property of this [IHLS] space is a “well-
behaved” saturation coordinate which, in contrast to commonly
used ones, always has a small numerical value for near-
achromatic colours, and is completely independent of the
brightness function
             A 3D-polar Coordinate Colour Representation Suitable for
             Image, Analysis Allan Hanbury and Jean Serra

MATLAB routines implementing the RGB-to-IHLS and IHLS-to-RGB are
available at http://www.prip.tuwien.ac.at/˜hanbury.

R routines implementing the RGB-to-IHLS and IHLS-to-RGB are
available at http://www.shatterline.com/SkinDetection.html
   Package ‘ReadImages’
       This package provides functions for reading
        JPEG and PNG files
   Package ‘randomForest’
       Breiman and Cutler’s Classification and
        regression based on a forest of trees using
        random inputs.
   Package ‘foreach’
     Support for the foreach looping construct
     Stretch goal to use %dopar%
set.seed(371)
skin.rf <- foreach(i = c(1:nrow(training.frames.list)), .combine=combine,
.packages='randomForest') %do%
{
    #Read the Image
    #transform from RGB to IHLS
    #Read the corresponding ground-truth image
    #data is ready, now apply random forest #not using the formula interface
    randomForest(table.data, y=table.truth, mtry = 2, importance = FALSE,
    proximity = FALSE, ntree=10, do.trace = 100)

}




table.pred.truth <- predict(skin.rf, test.table.data)
   Attributions, code and dataset location (1
    minute)
   Overview of the scheme (2 minutes)
   Refresher on Random Forest and R
    Support (2 minutes)
   Results and continuing work (1 minute)
   Q&A (1 minute and later)
   Have lots of decision-tree learners
   Each learner’s training set is sampled
    independently – with replacement
   Add more randomness – at each node of
    the tree, the splitting attribute is selected
    from a randomly chosen sample of
    attributes
Each decision tree votes
                                for a classification




     Forest chooses a
classification with the
            most votes
   Quick training phase
   Trees can grow in parallel
   Trees have attractive computing
    properties
   For example…
       Computation cost of making a binary tree is
        low O(N Log N)
       Cost of using a tree is even lower – O(Log N)
       N is the number of data points
       Applies to balanced binary trees; decision
        trees often not balanced
   Attributions, code and dataset location (1
    minute)
   Overview of the scheme (2 minutes)
   Refresher on Random Forest and R
    Support (2 minutes)
   Results and continuing work (1 minute)
   Q&A (1 minute and later)
ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=5651638
My Results? OK, but incomplete due to very small training set.
Need parallel computing cluster
   Attributions, code and dataset location (1
    minute)
   Overview of the scheme (2 minutes)
   Refresher on Random Forest and R
    Support (2 minutes)
   Results and continuing work (1 minute)
   Q&A (1 minute and later)

More Related Content

What's hot

H2O Distributed Deep Learning by Arno Candel 071614
H2O Distributed Deep Learning by Arno Candel 071614H2O Distributed Deep Learning by Arno Candel 071614
H2O Distributed Deep Learning by Arno Candel 071614Sri Ambati
 
Feature Engineering - Getting most out of data for predictive models - TDC 2017
Feature Engineering - Getting most out of data for predictive models - TDC 2017Feature Engineering - Getting most out of data for predictive models - TDC 2017
Feature Engineering - Getting most out of data for predictive models - TDC 2017Gabriel Moreira
 
H2ODeepLearningThroughExamples021215
H2ODeepLearningThroughExamples021215H2ODeepLearningThroughExamples021215
H2ODeepLearningThroughExamples021215Sri Ambati
 
Basics of Machine Learning
Basics of Machine LearningBasics of Machine Learning
Basics of Machine LearningPranav Challa
 
H2O Deep Learning at Next.ML
H2O Deep Learning at Next.MLH2O Deep Learning at Next.ML
H2O Deep Learning at Next.MLSri Ambati
 
Ml9 introduction to-unsupervised_learning_and_clustering_methods
Ml9 introduction to-unsupervised_learning_and_clustering_methodsMl9 introduction to-unsupervised_learning_and_clustering_methods
Ml9 introduction to-unsupervised_learning_and_clustering_methodsankit_ppt
 
Clustering introduction
Clustering introductionClustering introduction
Clustering introductionYan Xu
 
Machine learning and_nlp
Machine learning and_nlpMachine learning and_nlp
Machine learning and_nlpankit_ppt
 
Decision Trees
Decision TreesDecision Trees
Decision TreesStudent
 
DataEngConf: Feature Extraction: Modern Questions and Challenges at Google
DataEngConf: Feature Extraction: Modern Questions and Challenges at GoogleDataEngConf: Feature Extraction: Modern Questions and Challenges at Google
DataEngConf: Feature Extraction: Modern Questions and Challenges at GoogleHakka Labs
 
08 neural networks
08 neural networks08 neural networks
08 neural networksankit_ppt
 
Deep learning summary
Deep learning summaryDeep learning summary
Deep learning summaryankit_ppt
 
Deep learning with TensorFlow
Deep learning with TensorFlowDeep learning with TensorFlow
Deep learning with TensorFlowBarbara Fusinska
 
Deep Learning for Recommender Systems RecSys2017 Tutorial
Deep Learning for Recommender Systems RecSys2017 Tutorial Deep Learning for Recommender Systems RecSys2017 Tutorial
Deep Learning for Recommender Systems RecSys2017 Tutorial Alexandros Karatzoglou
 
Ml10 dimensionality reduction-and_advanced_topics
Ml10 dimensionality reduction-and_advanced_topicsMl10 dimensionality reduction-and_advanced_topics
Ml10 dimensionality reduction-and_advanced_topicsankit_ppt
 
Dimensionality reduction
Dimensionality reductionDimensionality reduction
Dimensionality reductionShatakirti Er
 
Forest Cover type prediction
Forest Cover type predictionForest Cover type prediction
Forest Cover type predictionDaniel Gribel
 

What's hot (20)

H2O Distributed Deep Learning by Arno Candel 071614
H2O Distributed Deep Learning by Arno Candel 071614H2O Distributed Deep Learning by Arno Candel 071614
H2O Distributed Deep Learning by Arno Candel 071614
 
TensorFlow in 3 sentences
TensorFlow in 3 sentencesTensorFlow in 3 sentences
TensorFlow in 3 sentences
 
Feature Engineering - Getting most out of data for predictive models - TDC 2017
Feature Engineering - Getting most out of data for predictive models - TDC 2017Feature Engineering - Getting most out of data for predictive models - TDC 2017
Feature Engineering - Getting most out of data for predictive models - TDC 2017
 
H2ODeepLearningThroughExamples021215
H2ODeepLearningThroughExamples021215H2ODeepLearningThroughExamples021215
H2ODeepLearningThroughExamples021215
 
Basics of Machine Learning
Basics of Machine LearningBasics of Machine Learning
Basics of Machine Learning
 
H2O Deep Learning at Next.ML
H2O Deep Learning at Next.MLH2O Deep Learning at Next.ML
H2O Deep Learning at Next.ML
 
Ml9 introduction to-unsupervised_learning_and_clustering_methods
Ml9 introduction to-unsupervised_learning_and_clustering_methodsMl9 introduction to-unsupervised_learning_and_clustering_methods
Ml9 introduction to-unsupervised_learning_and_clustering_methods
 
Clustering introduction
Clustering introductionClustering introduction
Clustering introduction
 
07 learning
07 learning07 learning
07 learning
 
Machine learning and_nlp
Machine learning and_nlpMachine learning and_nlp
Machine learning and_nlp
 
Decision Trees
Decision TreesDecision Trees
Decision Trees
 
DataEngConf: Feature Extraction: Modern Questions and Challenges at Google
DataEngConf: Feature Extraction: Modern Questions and Challenges at GoogleDataEngConf: Feature Extraction: Modern Questions and Challenges at Google
DataEngConf: Feature Extraction: Modern Questions and Challenges at Google
 
08 neural networks
08 neural networks08 neural networks
08 neural networks
 
Deep learning summary
Deep learning summaryDeep learning summary
Deep learning summary
 
Deep learning with TensorFlow
Deep learning with TensorFlowDeep learning with TensorFlow
Deep learning with TensorFlow
 
Deep Learning for Recommender Systems RecSys2017 Tutorial
Deep Learning for Recommender Systems RecSys2017 Tutorial Deep Learning for Recommender Systems RecSys2017 Tutorial
Deep Learning for Recommender Systems RecSys2017 Tutorial
 
forest-cover-type
forest-cover-typeforest-cover-type
forest-cover-type
 
Ml10 dimensionality reduction-and_advanced_topics
Ml10 dimensionality reduction-and_advanced_topicsMl10 dimensionality reduction-and_advanced_topics
Ml10 dimensionality reduction-and_advanced_topics
 
Dimensionality reduction
Dimensionality reductionDimensionality reduction
Dimensionality reduction
 
Forest Cover type prediction
Forest Cover type predictionForest Cover type prediction
Forest Cover type prediction
 

Viewers also liked

Of knights-and-drawbridges-nat-behaviour
Of knights-and-drawbridges-nat-behaviourOf knights-and-drawbridges-nat-behaviour
Of knights-and-drawbridges-nat-behaviourAuro Tripathy
 
Image Analysis for Food Scientists
Image Analysis for Food ScientistsImage Analysis for Food Scientists
Image Analysis for Food ScientistsKevin Mader
 
Back-propagation Primer
Back-propagation PrimerBack-propagation Primer
Back-propagation PrimerAuro Tripathy
 
Recurrent nets and sensors
Recurrent nets and sensorsRecurrent nets and sensors
Recurrent nets and sensorsAdam Gibson
 
Real-Time Streaming Data Analysis with HTM
Real-Time Streaming Data Analysis with HTMReal-Time Streaming Data Analysis with HTM
Real-Time Streaming Data Analysis with HTMNumenta
 
Hybrid neural networks for time series learning by Tian Guo, EPFL, Switzerland
Hybrid neural networks for time series learning by Tian Guo,  EPFL, SwitzerlandHybrid neural networks for time series learning by Tian Guo,  EPFL, Switzerland
Hybrid neural networks for time series learning by Tian Guo, EPFL, SwitzerlandEuroIoTa
 
Object recognition
Object recognitionObject recognition
Object recognitionakkichester
 
Random forest
Random forestRandom forest
Random forestUjjawal
 
Presentation Object Recognition And Tracking Project
Presentation Object Recognition And Tracking ProjectPresentation Object Recognition And Tracking Project
Presentation Object Recognition And Tracking ProjectPrathamesh Joshi
 
Latent Semanctic Analysis Auro Tripathy
Latent Semanctic Analysis Auro TripathyLatent Semanctic Analysis Auro Tripathy
Latent Semanctic Analysis Auro TripathyAuro Tripathy
 
Object Detection & Tracking
Object Detection & TrackingObject Detection & Tracking
Object Detection & TrackingAkshay Gujarathi
 
Face Detection techniques
Face Detection techniquesFace Detection techniques
Face Detection techniquesAbhineet Bhamra
 
Understanding Random Forests: From Theory to Practice
Understanding Random Forests: From Theory to PracticeUnderstanding Random Forests: From Theory to Practice
Understanding Random Forests: From Theory to PracticeGilles Louppe
 
Data Science - Part XVII - Deep Learning & Image Processing
Data Science - Part XVII - Deep Learning & Image ProcessingData Science - Part XVII - Deep Learning & Image Processing
Data Science - Part XVII - Deep Learning & Image ProcessingDerek Kane
 

Viewers also liked (18)

Of knights-and-drawbridges-nat-behaviour
Of knights-and-drawbridges-nat-behaviourOf knights-and-drawbridges-nat-behaviour
Of knights-and-drawbridges-nat-behaviour
 
Image Analysis for Food Scientists
Image Analysis for Food ScientistsImage Analysis for Food Scientists
Image Analysis for Food Scientists
 
Back-propagation Primer
Back-propagation PrimerBack-propagation Primer
Back-propagation Primer
 
GoogLeNet Insights
GoogLeNet InsightsGoogLeNet Insights
GoogLeNet Insights
 
Recurrent nets and sensors
Recurrent nets and sensorsRecurrent nets and sensors
Recurrent nets and sensors
 
Real-Time Streaming Data Analysis with HTM
Real-Time Streaming Data Analysis with HTMReal-Time Streaming Data Analysis with HTM
Real-Time Streaming Data Analysis with HTM
 
Hybrid neural networks for time series learning by Tian Guo, EPFL, Switzerland
Hybrid neural networks for time series learning by Tian Guo,  EPFL, SwitzerlandHybrid neural networks for time series learning by Tian Guo,  EPFL, Switzerland
Hybrid neural networks for time series learning by Tian Guo, EPFL, Switzerland
 
Object recognition
Object recognitionObject recognition
Object recognition
 
Random forest
Random forestRandom forest
Random forest
 
HTTP Live Streaming
HTTP Live StreamingHTTP Live Streaming
HTTP Live Streaming
 
Presentation Object Recognition And Tracking Project
Presentation Object Recognition And Tracking ProjectPresentation Object Recognition And Tracking Project
Presentation Object Recognition And Tracking Project
 
Latent Semanctic Analysis Auro Tripathy
Latent Semanctic Analysis Auro TripathyLatent Semanctic Analysis Auro Tripathy
Latent Semanctic Analysis Auro Tripathy
 
Object Detection & Tracking
Object Detection & TrackingObject Detection & Tracking
Object Detection & Tracking
 
Pattern Recognition
Pattern RecognitionPattern Recognition
Pattern Recognition
 
Face Detection techniques
Face Detection techniquesFace Detection techniques
Face Detection techniques
 
Random forest
Random forestRandom forest
Random forest
 
Understanding Random Forests: From Theory to Practice
Understanding Random Forests: From Theory to PracticeUnderstanding Random Forests: From Theory to Practice
Understanding Random Forests: From Theory to Practice
 
Data Science - Part XVII - Deep Learning & Image Processing
Data Science - Part XVII - Deep Learning & Image ProcessingData Science - Part XVII - Deep Learning & Image Processing
Data Science - Part XVII - Deep Learning & Image Processing
 

Similar to Random Forest Skin Detection

Why Graphics Is Fast, and What It Can Teach Us About Parallel Programming
Why Graphics Is Fast, and What It Can Teach Us About Parallel ProgrammingWhy Graphics Is Fast, and What It Can Teach Us About Parallel Programming
Why Graphics Is Fast, and What It Can Teach Us About Parallel ProgrammingJonathan Ragan-Kelley
 
Deep Recurrent Neural Networks for Sequence Learning in Spark by Yves Mabiala
Deep Recurrent Neural Networks for Sequence Learning in Spark by Yves MabialaDeep Recurrent Neural Networks for Sequence Learning in Spark by Yves Mabiala
Deep Recurrent Neural Networks for Sequence Learning in Spark by Yves MabialaSpark Summit
 
PT-4054, "OpenCL™ Accelerated Compute Libraries" by John Melonakos
PT-4054, "OpenCL™ Accelerated Compute Libraries" by John MelonakosPT-4054, "OpenCL™ Accelerated Compute Libraries" by John Melonakos
PT-4054, "OpenCL™ Accelerated Compute Libraries" by John MelonakosAMD Developer Central
 
Generating super resolution images using transformers
Generating super resolution images using transformersGenerating super resolution images using transformers
Generating super resolution images using transformersNEERAJ BAGHEL
 
Deep Learning Based Voice Activity Detection and Speech Enhancement
Deep Learning Based Voice Activity Detection and Speech EnhancementDeep Learning Based Voice Activity Detection and Speech Enhancement
Deep Learning Based Voice Activity Detection and Speech EnhancementNAVER Engineering
 
Separating Hype from Reality in Deep Learning with Sameer Farooqui
 Separating Hype from Reality in Deep Learning with Sameer Farooqui Separating Hype from Reality in Deep Learning with Sameer Farooqui
Separating Hype from Reality in Deep Learning with Sameer FarooquiDatabricks
 
ECCV2010: feature learning for image classification, part 4
ECCV2010: feature learning for image classification, part 4ECCV2010: feature learning for image classification, part 4
ECCV2010: feature learning for image classification, part 4zukun
 
Deep Learning and Watson Studio
Deep Learning and Watson StudioDeep Learning and Watson Studio
Deep Learning and Watson StudioSasha Lazarevic
 
Why Image compression is Necessary?
Why Image compression is Necessary?Why Image compression is Necessary?
Why Image compression is Necessary?Prabhat Kumar
 
机器学习Adaboost
机器学习Adaboost机器学习Adaboost
机器学习AdaboostShocky1
 
A Platform for Accelerating Machine Learning Applications
 A Platform for Accelerating Machine Learning Applications A Platform for Accelerating Machine Learning Applications
A Platform for Accelerating Machine Learning ApplicationsNVIDIA Taiwan
 
Super Resolution with OCR Optimization
Super Resolution with OCR OptimizationSuper Resolution with OCR Optimization
Super Resolution with OCR OptimizationniveditJain
 
Image De-Noising Using Deep Neural Network
Image De-Noising Using Deep Neural NetworkImage De-Noising Using Deep Neural Network
Image De-Noising Using Deep Neural Networkaciijournal
 
Fann tool users_guide
Fann tool users_guideFann tool users_guide
Fann tool users_guideBirol Kuyumcu
 
Massive Matrix Factorization : Applications to collaborative filtering
Massive Matrix Factorization : Applications to collaborative filteringMassive Matrix Factorization : Applications to collaborative filtering
Massive Matrix Factorization : Applications to collaborative filteringArthur Mensch
 
Dictionary Learning for Massive Matrix Factorization
Dictionary Learning for Massive Matrix FactorizationDictionary Learning for Massive Matrix Factorization
Dictionary Learning for Massive Matrix Factorizationrecsysfr
 

Similar to Random Forest Skin Detection (20)

Why Graphics Is Fast, and What It Can Teach Us About Parallel Programming
Why Graphics Is Fast, and What It Can Teach Us About Parallel ProgrammingWhy Graphics Is Fast, and What It Can Teach Us About Parallel Programming
Why Graphics Is Fast, and What It Can Teach Us About Parallel Programming
 
Deep Recurrent Neural Networks for Sequence Learning in Spark by Yves Mabiala
Deep Recurrent Neural Networks for Sequence Learning in Spark by Yves MabialaDeep Recurrent Neural Networks for Sequence Learning in Spark by Yves Mabiala
Deep Recurrent Neural Networks for Sequence Learning in Spark by Yves Mabiala
 
PT-4054, "OpenCL™ Accelerated Compute Libraries" by John Melonakos
PT-4054, "OpenCL™ Accelerated Compute Libraries" by John MelonakosPT-4054, "OpenCL™ Accelerated Compute Libraries" by John Melonakos
PT-4054, "OpenCL™ Accelerated Compute Libraries" by John Melonakos
 
Generating super resolution images using transformers
Generating super resolution images using transformersGenerating super resolution images using transformers
Generating super resolution images using transformers
 
Deep Learning Based Voice Activity Detection and Speech Enhancement
Deep Learning Based Voice Activity Detection and Speech EnhancementDeep Learning Based Voice Activity Detection and Speech Enhancement
Deep Learning Based Voice Activity Detection and Speech Enhancement
 
Separating Hype from Reality in Deep Learning with Sameer Farooqui
 Separating Hype from Reality in Deep Learning with Sameer Farooqui Separating Hype from Reality in Deep Learning with Sameer Farooqui
Separating Hype from Reality in Deep Learning with Sameer Farooqui
 
530 535
530 535530 535
530 535
 
ECCV2010: feature learning for image classification, part 4
ECCV2010: feature learning for image classification, part 4ECCV2010: feature learning for image classification, part 4
ECCV2010: feature learning for image classification, part 4
 
CudaTree (GTC 2014)
CudaTree (GTC 2014)CudaTree (GTC 2014)
CudaTree (GTC 2014)
 
Deep Learning and Watson Studio
Deep Learning and Watson StudioDeep Learning and Watson Studio
Deep Learning and Watson Studio
 
Why Image compression is Necessary?
Why Image compression is Necessary?Why Image compression is Necessary?
Why Image compression is Necessary?
 
机器学习Adaboost
机器学习Adaboost机器学习Adaboost
机器学习Adaboost
 
A Platform for Accelerating Machine Learning Applications
 A Platform for Accelerating Machine Learning Applications A Platform for Accelerating Machine Learning Applications
A Platform for Accelerating Machine Learning Applications
 
Super Resolution with OCR Optimization
Super Resolution with OCR OptimizationSuper Resolution with OCR Optimization
Super Resolution with OCR Optimization
 
Image De-Noising Using Deep Neural Network
Image De-Noising Using Deep Neural NetworkImage De-Noising Using Deep Neural Network
Image De-Noising Using Deep Neural Network
 
OpenAI Retro Contest
OpenAI Retro ContestOpenAI Retro Contest
OpenAI Retro Contest
 
H2 o berkeleydltf
H2 o berkeleydltfH2 o berkeleydltf
H2 o berkeleydltf
 
Fann tool users_guide
Fann tool users_guideFann tool users_guide
Fann tool users_guide
 
Massive Matrix Factorization : Applications to collaborative filtering
Massive Matrix Factorization : Applications to collaborative filteringMassive Matrix Factorization : Applications to collaborative filtering
Massive Matrix Factorization : Applications to collaborative filtering
 
Dictionary Learning for Massive Matrix Factorization
Dictionary Learning for Massive Matrix FactorizationDictionary Learning for Massive Matrix Factorization
Dictionary Learning for Massive Matrix Factorization
 

Random Forest Skin Detection

  • 1. Auro Tripathy auro@shatterline.com *Random Forests are registered trademarks of Leo Breiman and Adele Cutler
  • 2. Attributions, code and dataset location (1 minute)  Overview of the scheme (2 minutes)  Refresher on Random Forest and R Support (2 minutes)  Results and continuing work (1 minute)  Q&A (1 minute and later)
  • 4. R code available here; my contribution  http://www.shatterline.com/SkinDetection.html  Data set available here  http://www.feeval.org/Data-sets/Skin_Colors.html  Permission to use may be required
  • 5. All training sets organized as a two-movie sequence 1. A movies sequence of frames in color 2. A corresponding sequence of frames in binary black-and-white, the ground-truth  Extract individual frames in jpeg format using ffmpeg, a transcoding tool ffmpeg -i 14.avi -f image2 -ss 1.000 -vframes 1 14_500offset10s.jpeg ffmpeg -i 14_gt_500frames.avi -f image2 -ss 1.000 -vframes 1 14_gt_500frames_offset10s.jpeg
  • 6. Image Ground-truth The original authors used 8991 such image-pairs, the image along with its manually annotated pixel-level ground-truth.
  • 7. Attributions, code and dataset location (1 minute)  Overview of the scheme (2 minutes)  Refresher on Random Forest and R Support (2 minutes)  Results and continuing work (1 minute)  Q&A (1 minute and later)
  • 8. Skin-color classification/segmentation  Uses Improved Hue, Saturation, Luminance (IHLS) color-space  RBG values transformed to HLS  HLS used as feature-vectors  Original authors also experimented with  Bayesian network,  Multilayer Perceptron,  SVM,  AdaBoost (Adaptive Boosting),  Naive Bayes,  RBF network “Random Forest shows the best performance in terms of accuracy, precision and recall”
  • 9. The most important property of this [IHLS] space is a “well- behaved” saturation coordinate which, in contrast to commonly used ones, always has a small numerical value for near- achromatic colours, and is completely independent of the brightness function A 3D-polar Coordinate Colour Representation Suitable for Image, Analysis Allan Hanbury and Jean Serra MATLAB routines implementing the RGB-to-IHLS and IHLS-to-RGB are available at http://www.prip.tuwien.ac.at/˜hanbury. R routines implementing the RGB-to-IHLS and IHLS-to-RGB are available at http://www.shatterline.com/SkinDetection.html
  • 10. Package ‘ReadImages’  This package provides functions for reading JPEG and PNG files  Package ‘randomForest’  Breiman and Cutler’s Classification and regression based on a forest of trees using random inputs.  Package ‘foreach’  Support for the foreach looping construct  Stretch goal to use %dopar%
  • 11. set.seed(371) skin.rf <- foreach(i = c(1:nrow(training.frames.list)), .combine=combine, .packages='randomForest') %do% { #Read the Image #transform from RGB to IHLS #Read the corresponding ground-truth image #data is ready, now apply random forest #not using the formula interface randomForest(table.data, y=table.truth, mtry = 2, importance = FALSE, proximity = FALSE, ntree=10, do.trace = 100) } table.pred.truth <- predict(skin.rf, test.table.data)
  • 12. Attributions, code and dataset location (1 minute)  Overview of the scheme (2 minutes)  Refresher on Random Forest and R Support (2 minutes)  Results and continuing work (1 minute)  Q&A (1 minute and later)
  • 13. Have lots of decision-tree learners  Each learner’s training set is sampled independently – with replacement  Add more randomness – at each node of the tree, the splitting attribute is selected from a randomly chosen sample of attributes
  • 14. Each decision tree votes for a classification Forest chooses a classification with the most votes
  • 15. Quick training phase  Trees can grow in parallel  Trees have attractive computing properties  For example…  Computation cost of making a binary tree is low O(N Log N)  Cost of using a tree is even lower – O(Log N)  N is the number of data points  Applies to balanced binary trees; decision trees often not balanced
  • 16. Attributions, code and dataset location (1 minute)  Overview of the scheme (2 minutes)  Refresher on Random Forest and R Support (2 minutes)  Results and continuing work (1 minute)  Q&A (1 minute and later)
  • 17. ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=5651638 My Results? OK, but incomplete due to very small training set. Need parallel computing cluster
  • 18. Attributions, code and dataset location (1 minute)  Overview of the scheme (2 minutes)  Refresher on Random Forest and R Support (2 minutes)  Results and continuing work (1 minute)  Q&A (1 minute and later)