The classification is based upon a branching flow, with an appropriate test at each node. The emotions are divided into broad categories and further tests are performed to identity each emotion individually. For this, we divided our set of four emotions into good and bad emotions with happy and surprised being the happy moods and sad and angry being the bad moods.
Before any of the tests were performed, the image of the face woudl be cropped to the mouth which is our primary interest. This can be done in one of two ways, either using Matlab's ginput command or the function goodcrop.The highest level test, Test 1, distinguishes between pictures representing a happy or positive emotion from those representing a bad or negative emotion. Once a mood was detected as either being a happy or a sad mood it would then be tested again to classify it as one of the two moods in each category. The two pictures which are identified as having positive emotions are then sent to Test 2 which distinguishes between an happy and a surprised emotion. The other two pictures are sent to Test 3 which distinguishes between sad and angry.
![]() |
This method was quite effective as it reduced the total number of tests to be performed to three. Having a single test to correctly detect a emotion was not feasible because it involved setting thresholds which wouldnt hold over a wide variety of test cases and also increase the total number of tests being performed.
















"assafdf"