If the branch is focused on research, please make sure to add a brief summary of the work being done in the README.md file.
Voice samples are nicely labelled and easy to play.
Add information about why these specific emotions were selected. How are they being broken down into training/testing data?
Branch: shanshan_zhao
README.md and code comments are written primarily in Chinese.
I don't believe this is a horrible problem since it makes understanding the work being done between teammates easier but reviewing the code and understanding what is being developed is hard for people who don't read Chinese. I would suggest adding a translation to English in addition to the Chinese.
No instructions for running/installing the Android application.
From class it is understood this could be easily run in Android Studio. It might be beneficial to at least add a brief instruction in the README.md file on how to clone the repository and import the project into Android Studio IDE.
Excellent code formatting
Variable names are descriptive and the functions are grouped together in an understandable manner.
Possible code repeat issue in generateWaveFileHeader.
Although it is easy to understand what is being written, having that many individual indexes of the array may result in issues later on. Is there an easier way to write this piece such as by adding the data in segments to the array (e.g. index through slicing like in python) and then just comment on what is being added?
Branch: weixuan_jiang
Analysis of test_knn.py:
"ctrain.txt", "train_data.csv" & "test_data.csv" are not provided.
Having these files would not only allow the reader to be able to run the code but also understand why the data manipulation in the for loops is being performed.
Code is easy to follow but might not follow all PEP-8 conventions.
The variables are easy to read and are descriptive. Some lines may be longer than 78 characters long which is part of the PEP-8 convention. Take a look at the documentation and see if line continuation methods might be beneficial to you.
Repeat code: train_data & test_data for loops
Better to create a function that is passed the temp data variable and then returns the appropriate format for the data.
Branch: zhonghao_guo
Detailed summary of work in README.md
It was easy to understand what had been developed in your branch.
Suggestion: The commit process allows you to add comments about what you have done for that particular commit. Looking through your commit history it seems you don't add any comments. It may be beneficial to add your summary of things done in the commits instead of the README.md summary in the future.
Analysis of Pitch folder contents:
Variable names are somewhat vague.
The variables at the end of pitch.m and pitch_extraction.m (i.e.- _mean, _median, _average) are descriptive but it is not clear on what fx1, fx2, tt1, tt2, etc. are representing.
Use of magic numbers for x1 & x2 arrays in pitch.m
Not clear where 151423 & 143807 come from (assuming these represent the number of samples of the two wavfiles. It would be better to use another method to populate these arrays that are based off of the properties you can extract from the wavfile (also it makes updating the code difficult if this code is used more than once or twice).
Good use of comments in cell2csv.m
Makes it clear that the code is not yours and gives credit to those that created it. Also explains the functionality of the code. It may be a good idea to put the link of where you found the code in the comments to ensure that there is no copyright or licensing issues.
Comments for pitch cell structure/formatting change in pitch_extraction.m
Easy to understand the (i, #) format you used to assign the various cells but is there an easier way to do this? Possibly a for loop?
A comment about why this format/order is being used would be helpful.
Analysis of MFCC folder:
Unclear what MFCC stands for. Please make this more clear either in comments or documentation.
Please see similar comments about unclear variable names as mentioned above.
Branch: chihwei_tung
Branch: shanshan_zhao
Branch: weixuan_jiang
Branch: zhonghao_guo