smenon8 / AnimalWildlifeEstimator

Animal Wildlife Estimator Using Social Media (A.W.E.S.O.M.E.) is an ongoing project and stems mainly from Sreejith Menon's MS thesis
https://smenon8.github.io/AnimalWildlifeEstimator/
BSD 3-Clause "New" or "Revised" License
2 stars 1 forks source link

Issue with consolidated feature file #1

Open smenon8 opened 8 years ago

smenon8 commented 8 years ago

The new modifications to GetPropertiesAPI.py for supporting multiple instance query to IBEIS returns flat objects instead of embedding it inside a list object.

The est_age_months property passed through getAgeFeatureReadableFmt always returns unknown. Possibly because of flat objects.

The changed output json format has also to be tested in all scripts to ensure it is working fine and no changes are needed.

smenon8 commented 8 years ago

Potential changes identified in the script JobsMapResultsFilesToContainerObjs.py file in the below methods.

genAidFeatureDictList()
genAidFeatureDictDict()

est_age_months issue fixed by modifying getAgeFeatureReadableFmt()

smenon8 commented 8 years ago

Test of correctness: If all result generation snippets run without issues and produces desired results in the VisualizeResults.ipynb notebook, then this issue can be closed.

VisualizeResults.ipynb is known to use all the features and all the permutations of them.

smenon8 commented 8 years ago

Issue identified - VisualizeResults.ipynb notebook makes an API call via GetPropertiesAPI.py to extract features once again for uneven features.

Uneven features - In an image with multiple species and same age-groups, that is a giraffe and zebra who are both adults, the countingLogic object for feature1 will have 2 elements while countingLogic object for feature2 will only have 1 element.

After the performance update of GetPropertiesAPI and API renames the methods now use new feature names, while the method ovrallShrCntsByTwoFtrs use the old naming conventions, which raises new exceptions while called. This brings a 't' and 'u' junk characters in the results.

Solution - Write another method that does queries on the locally available files instead of making GetPropertiesAPI calls.