Finally got a 2.8 Inch LCD display for Rasberry PI. Next step is to experiment with the models with real-time situations. This LCD will help to visualize the output. Package installation commands and reference.
Happy Learning!!!
December 31, 2019
December 30, 2019
Social Media Responsibilities
How do we measure social media impact? What are the pros and cons of Social Media
Pros
When we can’t even agree on what is real
Keep Thinking!!!
Pros
- Information Sharing
- Connect with a larger set of population
- Sharing information without Authenticity
- Motive / Authenticity of people sharing information
- Smiles / Selfies vs Reality of Life
- Manipulative / Biased / Personalized targeted ads
- Exploit human tendencies of feedback / Sensitized to bias
- Freedom of speech vs Hurting Sentiments
- Consequences of blackmail/threat/bullying through social media contacts
- Consequences of any form of violence instigated through messages
- Validating the facts/claims shared?
- Endorsing political advertisement claims without a moral stand?
- Biased targeting of users?
- Depression / Suicide due to excess usage of social media?
- Freedom of speech vs Authenticity of speech vs Intentions of information shared?
When we can’t even agree on what is real
Keep Thinking!!!
Labels:
Perspectives,
Social Media
December 26, 2019
December 24, 2019
Data Analysis vs Forensic Science
Before AI / BI it's about #exploring the data to uncover the #DataInsights. #DataAnalysis is similar to #ForensicScience. Side by Side comparison of both perspectives.
#Data and #Insights sets the #direction for successful #AI / #BI usecases #datascience #bigdata #analytics
Happy Learning!!!
#Data and #Insights sets the #direction for successful #AI / #BI usecases #datascience #bigdata #analytics
Happy Learning!!!
Labels:
Data Science,
Data Science Tips
December 23, 2019
Difference between SQL and NOSQL Systems
Reposting from my two-year-old Quora answer
The Key differences between them lies in the understanding CAP theorem
Happy Learning!!!
The Key differences between them lies in the understanding CAP theorem
- Consistency
- Availability
- Partition Tolerance
- The datatypes, schema are predefined, You cannot store non-matching datatypes
- To avoid dirty data, systems enforce isolation levels that govern only committed data is read (Consistency)
- Only latest records are available, records at that point in time are not available
- Banking Systems, ordering systems where data needs to consistent will be mostly SQL based systems where consistency is important
- The schema is not tightly governed, its flexible you can store different datatypes in same columns
- These may be geographically distributed where data may be synced and eventually be consistent end of day not realtime
- They also support point in time data, data values at a point in time can also be looked up
- Where there is no requirement for consistency we can achieve other 2 Availability and partition tolerance
- Since some of the ACID properties are compromised you will have high availability of this systems
Happy Learning!!!
December 17, 2019
Improving Women Safety
To reduce crime against women more than strengthening laws we need to get to the root cause of issues. We need to analyze the crime data and fix the source of the problem.
We need to analyze the crime patterns based on different aspects to find the underlying patterns.
Pattern vs Solutions
It needs complete society change, not just laws. Let's prepare a safer tomorrow by making the required changes.
We need to analyze the crime patterns based on different aspects to find the underlying patterns.
Pattern vs Solutions
- Correlation with alcohol - How to reduce/limit alcohol consumption
- Correlation with education - How to reduce dropouts and improve education
- Correlation with income category - Sustainable jobs
- Correlation with marital status - Family aspects
- Correlation to caste - Driven by caste / Unemployment / Dropouts
- Correlation to age group - Social media, porn impact
- Correlation to social behavior - Drugs / partying / Addiction
- Correlation to job type - Government vs Private jobs vs Daily vs Organized Crimes
It needs complete society change, not just laws. Let's prepare a safer tomorrow by making the required changes.
Keep Questioning!!!
Labels:
My Thoughts,
Social Media
December 16, 2019
Day #307 - Porting Keras to Tensorflow Lite Version
Next Task is to run all the developed models in Pi using Tensorflow Lite. I am using google colab to convert the models into lite version.
The ported models we will attempt to run in Rasberry PI as next steps
Happy Learning!!!
The ported models we will attempt to run in Rasberry PI as next steps
Happy Learning!!!
Labels:
Data Science,
Data Science Tips
Day#306 - Express the SQL in pandas, TSQL in Pandas
I wanted to mimic joins, aggregation, sum whatever we do in Database with pandas. A simple storyline of Data Analysis between Employee, Department and Salary using pandas dataframes.
Everything can be done in SQL. This is a different approach to it using pandas.
Happy Learning!!!
Everything can be done in SQL. This is a different approach to it using pandas.
Happy Learning!!!
Labels:
Data Science,
Data Science Tips,
DataFrame,
Pandas,
Python
Day #305 - Loading from Weights file HDF, saved models H5 files
We will look at
- Vanilla Model
- Load preexisting weights HDF5 and Continue
- Load preexisting model H5 and Continue
Results
Option #1 - Vanilla Model
Option #2 - Continue from Saved Weights
Option #3 - Continue from Saved Model H5 File
Happy Learning!!!
Labels:
Data Science,
Data Science Tips
Day #304 - Analysis of Deep Fashion Dataset - LandmarkDetection
Three different poses
8 localization points only 4 is not null in all columns
Different visibility value options (0,1,2) - visibility: v=2 visible; v=1 occlusion; v=0 not labeled
One model for each category we need to do
The top-level has 3 generic categories:
Data - Link
Architecture Implementation
Data Analysis of the Dataset for Non-Zero Columns
Non-zero columns
Happy Learning!!!
8 localization points only 4 is not null in all columns
Different visibility value options (0,1,2) - visibility: v=2 visible; v=1 occlusion; v=0 not labeled
One model for each category we need to do
The top-level has 3 generic categories:
- 1: “top” (upper-body clothes such as jackets, sweaters, tees, etc.)
- 2: “bottom” (lower-body clothes such as jeans, shorts, skirts, etc.)
- 3: “long” (full-body clothes such as dresses, coats, robes, etc.)
Data - Link
Architecture Implementation
Data Analysis of the Dataset for Non-Zero Columns
- image_name 0
- landmark_visibility_1 0
- landmark_location_x_1 0
- landmark_location_y_1 0
- landmark_visibility_2 0
- landmark_location_x_2 0
- landmark_location_y_2 0
- landmark_visibility_3 0
- landmark_location_x_3 0
- landmark_location_y_3 0
- landmark_visibility_4 0
- landmark_location_x_4 0
- landmark_location_y_4 0
- landmark_visibility_5 30972
- landmark_location_x_5 30972
- landmark_location_y_5 30972
- landmark_visibility_6 30972
- landmark_location_x_6 30972
- landmark_location_y_6 30972
- landmark_visibility_7 73003
- landmark_location_x_7 73003
- landmark_location_y_7 73003
- landmark_visibility_8 73003
- landmark_location_x_8 73003
- landmark_location_y_8 73003
Non-zero columns
- landmark_visibility_1 0
- landmark_location_x_1 0
- landmark_location_y_1 0
- landmark_visibility_2 0
- landmark_location_x_2 0
- landmark_location_y_2 0
- landmark_visibility_3 0
- landmark_location_x_3 0
- landmark_location_y_3 0
- landmark_visibility_4 0
- landmark_location_x_4 0
- landmark_location_y_4 0
Happy Learning!!!
Labels:
Data Science,
Data Science Tips
Day #303 - Model Training Guidelines - Part II
Here we will look at two more additions on top of the previous post
This is a template code. This can be customized for larger datasets
Happy Learning!!!
- Save model h5 file after every run/epoch
- Add Data batching to run in smaller iterations, Leverage Sequencer
This is a template code. This can be customized for larger datasets
Happy Learning!!!
Labels:
Data Science,
Data Science Tips
December 15, 2019
Project Learning Notes
Tracking, Counting has always been quite interesting topic for sometime. Explored this codebase link
I liked the approach of directionality based tracking. This is very needed for directionality based counting. Hoping to reuse / implement it in people counting scenarios.
My perspective is
Happy Learning!!!
I liked the approach of directionality based tracking. This is very needed for directionality based counting. Hoping to reuse / implement it in people counting scenarios.
My perspective is
- Tracking by Sampling Frames (Reduce Load)
- Use Euclidean and other attributes to track/match
- Evaluate existing tracking built in OpenCV (Again these need frame by frame tracking)
Happy Learning!!!
Labels:
Data Science,
Data Science Tips
December 13, 2019
Day #302 - Keras Best Practices during Training
In this post we take the raw version of code and add below features in code
- Adding Checkpoint
- Adding Logging
- Plot Results
- Restart Training from Checkpoint
- Early Stopping
Run #1 Output (10 Epochs)
Labels:
Data Science,
Data Science Tips,
Keras
December 11, 2019
Day #301 - Data Batching in Keras
This post is about custom data batching using Keras. Here we override the methods of inbuilt sequence. The below example is with dummy data generation, data splitting and fetching the batch of records.
Other strategies
Happy Learning!!!
Other strategies
- Databases -> CSV 50K Data Chunks Records -> Training and Save Checkpoint
- Checkpoint to Save for Each run and reuse for next 50K Chunk of Data
Labels:
Data Science,
Data Science Tips
December 01, 2019
Day #300 - Lessons Learnt from Multi-Label Classification
Today is 300th Post on Data Science. It has been a long journey. Still I feel there is a lot more to catchup. Keep Learning, Keep Going.
There are different tasks involved
1. Data Collection - Fatkun Batch Download Image chrome extension to download images
2. Script to reshape images and store in a standard format
3. Simple DB script to update and prepare data
4. This base implementation was useful for model implementation link
5. Data Test Results
Happy Learning!!!
There are different tasks involved
1. Data Collection - Fatkun Batch Download Image chrome extension to download images
2. Script to reshape images and store in a standard format
3. Simple DB script to update and prepare data
4. This base implementation was useful for model implementation link
5. Data Test Results
Happy Learning!!!
Labels:
Data Science,
Data Science Tips
November 26, 2019
Amazon Go /Big Basket Smart Machine - Tech Analysis
Amazon Go
Happy Learning!!!
- QR Code for user account linking
- Pick items, Auto detected
- Multiple validation points (Video Object Detection, Shelf Weight sensor-based confirmation, RFID reads etc)
- Multiple RFID readers to capture item movement across ISLEs
- Massive surveillance
- Real-time computation
- QR Code for user account linking
- Pick and Buy
- Mobile App integration
- Weight Sensors used to detect Shelf Item Quantity
- Unique Items in each row. It is not mixed
Happy Learning!!!
Labels:
AI Startups,
Data Science,
Technology
Day #299 - OpenVino Python Code for Faces - Pedestrain - Attributes
Hope this helps for other developers trying out executing intel openvino models in python
Happy Learning!!!
Happy Learning!!!
Labels:
Data Science,
Data Science Tips,
Openvino,
Python
November 24, 2019
Day #298 - Data Analysis of PNB Defaulters
Data Source - Link
Data Analysis of PNB Defaulters
Chart #1 - Top 20 States By Company Registration State and Defaulted Amount
Chart #2 - Top 20 States By Defaulters Count
Chart #3 - Top 20 Branches with Maximum Defaulters
Chart #4 - Top 20 Branches with Maximum Defaulters Loan Value
Possible Feature Variables
Data Analysis of PNB Defaulters
Chart #1 - Top 20 States By Company Registration State and Defaulted Amount
Chart #2 - Top 20 States By Defaulters Count
Chart #3 - Top 20 Branches with Maximum Defaulters
Chart #4 - Top 20 Branches with Maximum Defaulters Loan Value
Possible Feature Variables
- Branch Related Approval Score, Higher Defaulters lower the rating
- Similar Industry Match Score
- State Related Scores
- Connections / Joint ventures in Past with Collapsed Companies
- Rules for threshold limit based on Industry / State / Branch
- Multiple Models for ongoing monitoring / performance / social medial trends etc..
- Build a global model with defaulter list across banks and identify common patterns/modus operandi
Happy Learning!!!
Labels:
Data Analysis,
Data Science
November 18, 2019
Day #297 - Paper Analysis - WIDER Face and Pedestrian Challenge
WIDER Face and Pedestrian Challenge
Tasks - face detection, pedestrian detection, person search
Dataset - WIDER Pedestrian Track - 20,000 images. From surveillance cameras, driving vehicles
Face Detection
Tasks - face detection, pedestrian detection, person search
Dataset - WIDER Pedestrian Track - 20,000 images. From surveillance cameras, driving vehicles
Face Detection
- Approach 1 - single stage detector with the network structure based on RetinaNet [7] and FAN - Face attention network
- Approach 2 - two-stage face detector following Faster R-CNN [12] and FPN Feature pyramid networks [13] framework
- Approach 3 - a two-stage face detection framework. RetinaNet [7] and RefineDet [15]. The team uses two-stage classification and regression to improve the accuracy of classification
- Approach 1 - basic detection framework of the champion is Cascade R-CNN. Five models are ensembled: ResNet50 [18], DenseNet-161 [19], 197 SENet-154 [20] and two ResNext-101 [21] models.
- Approach 2 - The second team uses FPN [13] and Faster R-CNN [12] as the basis of their detection framework
- Approach 3 - The team at the third place uses Cascade R-CNN [16] as the detection framework
- Approach 1 - The winning team designs a cascaded model that utilizes both face and body features for person search. (1) The face detector used here is MTCNN [26] trained on WIDER FACE [4]. (2) The face recognition model backbones include ResNet [18], InceptionResNet-v2 [27], DenseNet [19], DPN and MobiletNet [28]. (3) The Re-ID backbones include ResNet=50, ResNet-101, DenseNet-161 and DenseNet-201
- Approach 2 - The solution is decomposed into two stages - the first stage is to retrieve faces, and the second stage is to retrieve the bodies. Finally, the retrieval results of the two stages are combined as the ranking result. (1) Face Detection. The face detector used here are PCN [29] and MTCNN [26]. (2) Face Retrieval. A second-order networks [30], [31], [32] (ResNet34 as backbone) trained on VGGFace2 [33] with softmax loss and ring loss [34] is used here
- Approach 3 - In the first step, the face in the query is used to search persons, whose faces can be detected, by face recognition. Then these images are further used to search again in all candidate images by person reidentification feature to get the final result
Labels:
Data Science,
Data Science Tips
November 13, 2019
Day #296 - TensorflowLite
TensorflowLite models run in gmail, google photos, google assistant, google photos etc..
Advantages
model = build_your_model()
tf.keras.experimental.export_saved_model(model,saved_model_dir)
#convert keras to tensorflow lite model
converter = tf.lite.TFLiteConverter.from_saved_models(saved_model_dir)
#To experiment new feature
converter.experimental_new_converter = True
tflite_model = converter.convert()
Link1, Link2
Improve Performance of models
Tensorflow Lite on Micro-controllers is an impressive move. More than mobiles, cross platforms this is a very impressive step.
Happy Learning!!!
Advantages
- Low Latency
- No Data connection required
- On device sensors
- On Device ML on many platforms
- Tensorflow model saved in graph format
- Converted to Lite format
- Model compression
- Quantization
- Optimized SIMD Kernels
- Converter to generate model. Interpreter to run models
- Cross-Platform deployment
- Inference speed increases
- Binary size reduction
- Hardware acceleration roadmap
model = build_your_model()
tf.keras.experimental.export_saved_model(model,saved_model_dir)
#convert keras to tensorflow lite model
converter = tf.lite.TFLiteConverter.from_saved_models(saved_model_dir)
#To experiment new feature
converter.experimental_new_converter = True
tflite_model = converter.convert()
Link1, Link2
Improve Performance of models
- Reduce precision of weights (16 bit instead of 32 bit precision) - Quantization
- Pruning - Remove connections during training
- Op Kernels - ARM
- Delegates - GPU (Run on Specialized hardware)
Happy Learning!!!
Labels:
Data Science,
Data Science Tips
November 11, 2019
Getting new ideas perspectives
Some meaningful tips for new ideas, solutions, creative thinking
Happy Learning!!!mt: @Fisher85M— C-Suite Tech Point (@CsuiteTechPoint) May 28, 2020
CC @MikeQuindazzi @antgrasso
What is involved with the #Lean process? [Infographic]#sixsigma #startups #GrowthHacking #education #UX #brainstorming #innovation #agile #CX #IoT
[via @AXA] @ipfconline1 @Fisher85M pic.twitter.com/5LoMRrRKPz
Labels:
Idea Generation,
Perspectives,
Startup Ideas
November 05, 2019
Day #295 - Age - Emotion - Gender Detection Model
It seems I am aging faster than ever.
Deep Learning Model for Age, Gender, Emotion and Real-time implementation. It seems I am agining faster. If it says I am 40, I have just a decade left to code and transition to something else.
Years progressed so fast seems already aged. I hope to code and do something till my day of death. Keep Going...
Happy Learning!!!
Deep Learning Model for Age, Gender, Emotion and Real-time implementation. It seems I am agining faster. If it says I am 40, I have just a decade left to code and transition to something else.
Years progressed so fast seems already aged. I hope to code and do something till my day of death. Keep Going...
Happy Learning!!!
Labels:
Data Science,
Data Science Tips
November 04, 2019
November 01, 2019
October 30, 2019
Day #292 - Gstream on Windows10
Note - Do "complete" instead of "typical" for both cases for it to work
This link was useful to experiment and follow.
Step 1. Download installer1 from link
Step 2. Download installer2 from link
Install both of them in Windows, Goto Folder - F:\gstreamer\1.0\x86_64\bin
Step #3 - Command
gst-launch-1.0.exe -v ksvideosrc device-index=0 ! video/x-raw, format=YUY2, width=320, heigh=240, framerate=30/1, pixel-aspect-ratio=1/1 ! videoconvert ! autovideosink
Stream Output
Next Post Stream from rasberry pi to windows
Happy Learning!!!
This link was useful to experiment and follow.
Step 1. Download installer1 from link
Step 2. Download installer2 from link
Install both of them in Windows, Goto Folder - F:\gstreamer\1.0\x86_64\bin
Step #3 - Command
gst-launch-1.0.exe -v ksvideosrc device-index=0 ! video/x-raw, format=YUY2, width=320, heigh=240, framerate=30/1, pixel-aspect-ratio=1/1 ! videoconvert ! autovideosink
Stream Output
Next Post Stream from rasberry pi to windows
Happy Learning!!!
Labels:
Data Science Tips,
DataScience
October 29, 2019
Day #291 - Working with chatterbot - Windows 10
Happy Learning!!!
Labels:
Data Science,
Data Science Tips
Day #290 - Yolo from OpenCV DNN - Windows 10
OpenCV has examples to invoke Deep Network using readNet modules
Key Methods
Results
Happy Learning!!!
Key Methods
- cv.dnn.readNet - Load the network
- cv.dnn.NMSBoxes - Non Max Suppression
- cv.dnn.blobFromImage - Input for Deep Network
Results
Happy Learning!!!
Labels:
Data Science,
Data Science Tips
October 25, 2019
Day #289 - Example code for Class Creation, Data Persistence, Email and Phone number Validation
Example code for Class Creation, Data Persistence, Email and Phone number validators
Happy Learning!!!
Happy Learning!!!
Labels:
Data Science,
Data Science Tips
October 24, 2019
Day #288 - Messaging using pyzmq
pip install pyzmq
Example - python usage
Output
Real world use case - imagezmq: Transporting OpenCV images
Happy Learning!!!
Example - python usage
Output
Real world use case - imagezmq: Transporting OpenCV images
Happy Learning!!!
Labels:
Data Science,
Data Science Tips
October 19, 2019
Day #287 - Dlib Custom Detector
Learning's
- Aspect ratio needs to be maintained
- Trained for only one type of Object (Vim Dishwasher)
- Trained with just a few images 30 images of train and 5 images of test
- Environment - Windows 10, After all the Setup and Steps, It would take ~45 mins to develop for label, training, and testing
Data Set
- Custom Shelf and Vim dishwash Detection
Image Pre-requisites
- I resized data to 512 x 512 format to be consistent
- Place all images in train and test directory respectively before next steps
Label Training Data
- Img Lab Installation - Refer previous post
- Use Shift key to select rectangle
- Use Alt D to delete region
- Each tool has its own commands
Label Testing Data
Training Code
Test Code
Result
Labels:
Data Science,
Data Science Tips
Day #286 - Working with imglab Annotation Tool
Working with imglab annotation tool.
Happy Learning!!!
Happy Learning!!!
Labels:
Data Science,
Data Science Tips
October 17, 2019
Learning Moments
Last three-four days, I was breaking my head for a segmentation task. There were a ton of tutorials. Everywhere I pick a code and ended up not working. Finally, I managed to segment it. When we sit and learn alone defintely there will be moments of long failures. Do whatever you do with a bit of curiosity and interest. Learning is an ongoing habit. We are not used to proper learning with focus, attention, curiosity, passion, and experimentation.
Happy Learning!!!
Happy Learning!!!
Labels:
Learning
Day #285 - Experimenting with Unet Segmentation
U-Net
Step 1 - The initial image is
I am interested in segmenting the parts (products)
Step 2 - The first step is to resize the image into 256 x 256 dimension
Step 3 - The Next Step is to binarize the image
Next Demo
Happy Learning!!!
- Symmetric U-Shape - Convolutions + Poolings
- Up-Convolutions - Upsampled layers
- Encoder / Decoder
- Contraction / Expansion
- Skip Connections to learn pixel information
There are a ton of tutorials out there but it takes time to find to what works for us :) in our environment. I was experimenting on u-net based segmentation past few days. I will share my learnings on what worked for me.
Step 1 - The initial image is
I am interested in segmenting the parts (products)
Step 2 - The first step is to resize the image into 256 x 256 dimension
Step 3 - The Next Step is to binarize the image
This is the source image. The target image is
Step 4 - Tool - I used paint 3D and white brush in it to segment the required parts for my need
Step 5 - Follow the steps and create the train and label (source and segmented image)
Step 6 - Train the model, Got the repo and customized it link
Step 7 - The predictions for the test image are
Next Demo
Labels:
Data Science,
Data Science Tips
October 15, 2019
Day #284 - OpenCV Error in Windows server 2012
- Turn windows features on or off
- Skip the roles screen and directly go to Feature screen
- Select "Desktop Experience" under "User Interfaces and Infrastructure"
Think answer was useful link
Happy Learning!!!
Labels:
Data Science,
Data Science Tips
October 11, 2019
Day #283 - Clustering to group similar Images
For large retail datasets, before object detection. Clustering becomes essential to focus on each cluster to take it forward. Today's post is clustering images into similar groups
- Generate Feature Data based on VGG / Resnet
- Cluster them using Kmeans
- Result output to their respective cluster directory
Input - Mixed Set of Images
Output
Cluster 1
Cluster 2
Cluster 3
More Reads - Example (in R)
Happy Learning!!!
Labels:
Clustering
October 10, 2019
Day #282 - Retail Product Detection / Retail Object Detection
Paper #1 - Automatic Detection of Out-Of-Shelf Products in the Retail Sector Supply Chain
Rule-based information system
- OOS Contribution factors - Measurement of product availability, Measurement of shelf availability
- Approach - Radio-Frequency Identification based
- Rule - “IF (a product is fast-moving) AND (has low sales volatility) AND (POS sales = 0 for today) THEN the product is OOS
- IF Fastmoving product sales count is zero then there is a problem
- Detection approach = Historical data -> Patterns -> Rules = Apply on Current Data
Analysis
- Tasks - Automatic product checkout using segmentation, Object detection of products on store shelves
- Approach - Shelf Image -> Detector for regions (Class, BBox, Mask) -> Crop Each Region -> Object -> Feature Extractor -> KNN Classifier
Paper #3 - A deep learning pipeline for product recognition on store shelves
Analysis
- Shelf Image -> Region proposals -> Crop -> Reference Images -> Refinement -> Detection
Analysis
- Shelf Image -> Region Partition -> Recurring Pattern Detection -> Compliance Checking
- Shelf Image -> Region Partition -> Region proposals -> Detect Recurring Pattern, Reference Images for refinement -> Prediction
The Shelf Detector System For Retail Stores Using Object Detection
pip install -r requirements.txt
python train_obj_detector.py testNutella1
Code Details - https://github.com/bobquest33/dlib_obj_count/blob/master/nutella.pdf
Tool Used - https://imglab.in/
Interesting Read
Retail Product Recognition on Supermarket Shelves
Paper #5 - Rethinking Object Detection in Retail Stores
Key Notes
- Simultaneously object localization and counting, abbreviated as Locount
- Algorithms to localize groups of objects of interest with the number of instances
- Most of the state-of-the-art object detectors use non-maximal suppression (NMS) to post-process object proposals to produce final detections
- Cascaded localization and counting network (CLCNet)
- Localize groups of objects of interest with the numbers of instances
- Grozi-120 dataset
- Freiburg Groceries dataset
- GameStop dataset
- Retail-121 dataset
- Sku110k dataset
- TGFS dataset
Locount Dataset
- 140 common commodities, including 9 big subclasses
- Cascaded localization and counting network (CLCNet
- count-regression strategy for counting
- count-classification strategy for counting
- Locount to localize groups of objects with the instance numbers, which is more practical in retail scenarios
Labels:
Data Science,
Data Science Tips,
Retail
October 09, 2019
Day #281 - Yolo based Object Counting and Duplicate Removal
Today's learning is Yolo based object counting, duplicate removal using intersection over union metric.
Happy Learning!!!
Happy Learning!!!
Labels:
Data Science,
Data Science Tips
October 08, 2019
Day #280 - Human detection and Tracking
Project #1 - Human Detection and Tracking
Overview
Clone the project
Step 1 - python create_face_model.py -i data
Step 2 - python main.py -v video
Project #2 - Person-Detection-and-Tracking (Pending Execution)
Overview
Clone the project https://github.com/ambakick/Person-Detection-and-Tracking
Execute - camera.py in Spyder
Project #3 - Tracker Types Demo Project (Pending Execution)
Overview
demo - track multiple faces.py
Multiple_Trackers.py
face_eye.py
distance_to_camera.py
Datasets - Link
Object Motion Detection and Tracking for Video Surveillance
Measuring size and distance with OpenCV
Calculate X, Y, Z Real World Coordinates from Image Coordinates using OpenCV
Happy Learning!!!
Overview
- Detecting a human and its face in a given video and storing Local Binary Pattern Histogram
- Recognize them in any other videos
- Local Binary Pattern Histogram - type of visual descriptor, clockwise direction check neighbour values
Clone the project
Step 1 - python create_face_model.py -i data
Step 2 - python main.py -v video
Project #2 - Person-Detection-and-Tracking (Pending Execution)
Overview
- The person detection in Real-time is done with the help of Single Shot MultiBox Detector
- Single Shot MultiBox Detector
- Tracking - Kalman Filter is fed with the velocity, position and direction of the person which helps it to predict the future location
- The core of SSD is predicting category scores and box offsets for a fixed set of default bounding boxes using small convolutional filters applied to feature maps
- The key difference between training SSD and training a typical detector that uses region proposals, is that ground truth information needs to be assigned to specific outputs in the fixed set of detector outputs
Clone the project https://github.com/ambakick/Person-Detection-and-Tracking
Execute - camera.py in Spyder
Project #3 - Tracker Types Demo Project (Pending Execution)
Overview
- Track Multiple faces
- Download and Experiment
demo - track multiple faces.py
Multiple_Trackers.py
face_eye.py
distance_to_camera.py
Datasets - Link
Object Motion Detection and Tracking for Video Surveillance
Measuring size and distance with OpenCV
Calculate X, Y, Z Real World Coordinates from Image Coordinates using OpenCV
Happy Learning!!!
October 07, 2019
Learning and Growth
Every job / role / growth is more about understanding the problem / perspective / business and technical dimensions. AI has a lot of tools, languages, architecture, research insights. It is ongoing learning to evaluate all possible solutions, productize with certain boundaries, keep learning to expand other architectures. Be open to learning, titles/roles are a cascade effect of your consistent efforts.
Keep Going!!!
Keep Going!!!
Labels:
Learning
October 03, 2019
Day #279- Multi-Object Tracking
Project #1 - vehicle-speed-check
Clone Repository - Link
On Anaconda prompt,
cd vehicle-speed-check
pip install -r requirements.txt
python speed_check.py
Clone Repository - Link
On Anaconda prompt,
cd vehicle-speed-check
pip install -r requirements.txt
python speed_check.py
Comments - Very good project to get started. The logic of speed computation with respect to frames per second, pixel movement can be reused in other use cases. Use of dlib correlation tracker. The tracking logic can be reused in other similar implementation
Project #2 - Simple Example code (ROI Based)
Project #3 - Another interesting project from Adrian blog
Cloned the project and executed the demo. This code does not work in windows 10 though. Someone has fixed the code. The working code is in link
python multi_object_tracking_fast.py --prototxt E:\Code_Repo\multiobject-tracking-dlib\mobilenet_ssd\MobileNetSSD_deploy.prototxt --model E:\Code_Repo\multiobject-tracking-dlib\mobilenet_ssd\MobileNetSSD_deploy.caffemodel --video E:\Code_Repo\multiobject-tracking-dlib\race.mp4 --output E:\Code_Repo\multiobject-tracking-dlib\race_output_fast.avi
October 02, 2019
Day #278 - Object Tracking - TensorFlow Object Counting API
I came across this project. Fantastic work!! The Detection part needs to be finetuned for the Indian scenario, the tracking seems fine performing decently. You can spot a few false positives, Trucks on the other side of the lane are not detected, Indian Trucks are not well recognized. This can be handled by a custom detection model. Overall the tracking and counter approach can be reused in multiple scenarios.
Clone the project - object_counting_api
vehicle_counting.py - Executed this for some of my highway videos.
The objects passing through the line will be counted and incremented. Minor changes to roi
Output of the same
Happy Learning!!!
Clone the project - object_counting_api
vehicle_counting.py - Executed this for some of my highway videos.
The objects passing through the line will be counted and incremented. Minor changes to roi
Output of the same
Happy Learning!!!
Analytics in Elections
If Analytics is used to target people, neutralize opinions, create digital impressions. This would lead to the creation of bias. This is not an ethical use of AI.
Analytics is needed to create affordable health care, forecast economy, provide good insights to develop people, economy jobs. AI should be used in the right sense. AI for politics will benefit in the short term but it is a curse in the long term.
When the truth is neutralized with biased facts the consequences of power with the wrong leaders will be a curse for the future generations
Keep Thinking!!!
Analytics is needed to create affordable health care, forecast economy, provide good insights to develop people, economy jobs. AI should be used in the right sense. AI for politics will benefit in the short term but it is a curse in the long term.
When the truth is neutralized with biased facts the consequences of power with the wrong leaders will be a curse for the future generations
Keep Thinking!!!
Labels:
Thinking
September 29, 2019
The curse of Social Media and State of Education - Dark Future
With the growing amount of selfies, pics data shared across quora, facebook, Instagram, tiktok. We need to think of
- Impact of the content on the psychology of kids
- Emotional Maturity / Bias / Impact on Kids / Children
- Loss of productivity / Distraction
- There is considerably more bad content than the good content
- How does these content fuel for better thinking / better focus
- Who is responsible for moderating all the online content? How do I know as a parent the influence on my Kids
- The state of education/mindset hasn't changed with this cheap data plans. Instead, we started losing our own individual thinking
- This is a follow the crowd pattern approach. Developed countries do not have so much of exams but produce better research and innovation. With the state of education, we produce more failures and ship abroad few successful students
- Changing students to merely solving problems within time constraint does not develop creativity or curiosity
- If 90 kids fail in this education system what do they end up? Delivery boys?
- Population can't be controlled by force. It needs education, awareness, and responsibility
Better metrics for a better future generation and better thinking towards
- How do we make people self-sufficient
- How has education improved scientific thinking
- How has education improved morality
- How has education promoted social responsibility
- Are things affordable for the poor and needy
- What have we done to create ideas at grassroots
Creating a better intelligent generation needs more thoughts than just about GDP
Keep Thinking!!!
Labels:
Social Media
September 26, 2019
The Curse of Cheap Data Plans
Many time I wonder cheap data plans are a curse, not a boom. I see more often these days
Too much of personalization is a curse. You will lose yourself biased on your perspectives. Sometimes raw information makes more sense than tailored information.
Escape the Web!!!
- More time I personally spend on Youtube
- Forwards of TikTok/ Halo Status videoes
- Rechecking same repetitive news everywhere
Too much of personalization is a curse. You will lose yourself biased on your perspectives. Sometimes raw information makes more sense than tailored information.
Escape the Web!!!
Day #277 - Tracking Objects - Deep SORT
What is Deep Sort ?
Simple Online and Realtime Tracking with a Deep Association Metric
How it works ?
It performs Kalman filtering in image space and frame-by-frame data association using the Hungarian method with an association metric that measures bounding box overlap
Paper - Link
Happy Learning!!!
Simple Online and Realtime Tracking with a Deep Association Metric
How it works ?
It performs Kalman filtering in image space and frame-by-frame data association using the Hungarian method with an association metric that measures bounding box overlap
Paper - Link
Happy Learning!!!
September 25, 2019
Day # 276 - Segmentation, Age-Gender Estimations
This post is based on current learning's exploring segmentation and age/gender detection.
Experiment #1 - Used the existing model and took faces from edouardjanssens.com for both men / women from 1-100 in increments of 5. The actual result and predicted chart summary
Demo Code
Experiment #2 - Getting Started with Segmentation, Experimented with Repo - https://github.com/divamgupta/image-segmentation-keras
Few tweaks in code
Demo Code
Happy Learning!!!
Experiment #1 - Used the existing model and took faces from edouardjanssens.com for both men / women from 1-100 in increments of 5. The actual result and predicted chart summary
Demo Code
Experiment #2 - Getting Started with Segmentation, Experimented with Repo - https://github.com/divamgupta/image-segmentation-keras
Few tweaks in code
Demo Code
Happy Learning!!!
Labels:
Data Science,
Data Science Tips
Subscribe to:
Posts (Atom)