Skip to main content

Week 3

Aug 14th 2023

  • Add ffmpeg documentation sent in mail to CCTV.
  • Provide METRO details asked by Vannary
  • Document code cleanup for CCTV usage

Aug 15th 2023

  • Create PR to merge Dev branch into Master in cctv-apps

  • Asked Vannary for naming convention of models provided on GDrive here -> /VS_Research/CCTV/models/. Her reply:

    ```js
    1. Any model name with "cctv-multilabel*" is a one-stage model.
    2. Any model name with "cctv-singlelabel*" is a binary model that I use to predict defective vs non-defective images. This model is the first model for the two-stage model approach.
    3. Any model name with "cctv-defect-multilabel*" is the model without ND (no defect) in the prediction class. I use this model as the second model for the two-stage model approach after running the "cctv-singlelabel*" model to label images with the type of defect/feature.
    4. Any model name with "*spvidT*" is a model that is trained to test with the VB dataset. However, any model is acceptable if you plan to use the model for transfer learning and test the model on different test datasets.
    5. The naming convention is as follows:
    * Type of model - utility - train data set - C (include continuous labels) - Extra info (i.e. spvidT (for VB), GL for Group Label) - train/test split - cross-validation set that I used for training - backbone model - pretrain/w&b setting (T for True, F for False) - number of epoch - number of freezing epoch - image augmentation (T for true and F for false) - weighted function (T for true and F for False) - number of gpus used to train the model *
    6. A one-stage ResNet50 model for DNV:
    - for FB: cctv-multilabel-dnv-791_v3-C-80_20-cv0-resnet50-prT-e10-fe10-augF-weightF-4gpus
    - for VB: cctv-multilabel-dnv-791_v3-C-spvidT-80_20-cv0-resnet50-prT-e10-fe10-augF-weightF-4gpus
    - You can use any of these two models if you are not planning to test on the DNV dataset. I suggest using FB model one because it was trained with images from all videos.
    ```
  • Document predictions on ebmud using transfer-learning in a excel sheet

    • Created excel sheet with details on models used, data used and observations.
    • Sudhir reviewed testing various utility models with ebmud.
    • Need to decide on where to upload that. Currently it's on my OneDrive > Documents > cctv-ebmud-transfer-learning.xlsx.
  • Steps taken to test transfer-learning for ebmud on cctv-apps:

    1. Download the videos from GDrive at MyDrive/CCTV/ebmud/ to MSI at /home/gqc/CCTV/ebmud/Data/Dataset_X/Received_Data.

    2. Download required models from GDrive at MyDrive/VS_Research/CCTV/models/ to MSI at /home/gqc/git/cctv-apps/models using rclone like this:

        (pytorch) gqc@msi-desktop-ubuntu:models$ rclone copy hydrotrek-gdrive:/VS_Research/CCTV/models/DNV/cctv-multilabel-dnv-791_v3-C-80_20-cv0-resnet50-prT-e10-fe4-augF-weightF-4gpus.pkl .
    3. Edit the YAML parameters.

    4. Prepare distance annotation and defect annotation csv files under /home/gqc/CCTV/ebmud/Data/Dataset_X/Metadata_CSV.

      • Work needs to be done to save the annotation data to DB and link that DB here instead of using CSV files.
      • Having 'None' for metedata is throwing errors currently.
    5. Run the cctv usage notebook for group forming 02-usage-forming_video_groups.ipynb after changing the path to YAML in the notebook.

    6. Once DB is created, run the following command to extract frames.

        cctv_extract_frames -y /home/gqc/CCTV/ebmud/Data/Dataset_X/ebmud_settings.yml
    7. Copy the zipped frames to cctv-apps/public and extract frames here.

    8. Create CSV in cctv-apps for the extracted frames. We will use this later to upload in the app. Also, if working on MSI, make sure to download them to local.

    9. Run the streamlit app. On AI-Prediction app, Select the model to use for prediction from dropdown, labels present or not, annotations option and uplaod the CSV we created before.

    10. Select images from the carousal to generate prediction for that image.

  • Issues found in cctv-apps -> AI-Prediction app:

    • For Sample_Middle_Frames_2023_05_26.csv, for '4242020-10127 PM-DUSTIN BOWCOCK_001494.png', it throws below error irrespective of threshold:

        RuntimeError: Given groups=1, weight of size [64, 3, 7, 7], expected input[1, 4, 470, 700] to have 3 channels, but got 4 channels instead

Aug 16th 2023

  • Completed few TODOs from July and August.

  • AI3:

    • Broad brush-up of the phase-2 report
    • MermaidJS for the flow charts in ai3-hackathon repo to be made in the new file - C:\git\gqc\AI3 Competition\phase_3\phase3_roadmap.md
      • Need to mention file locations
      • Remove OPT and include LLAMA instead
      • Value distribution for each key
    • Look for ChatAll, which was included in training - On Deven's desktop
    • Find notebook used for keys standardization - Under git:ai3-hackathon/docs/nbs
    • Find notebook used for replacing 'NK' with correct keys - There was none, Implemented that in git:ai3-hackathon/mqtt/utils
    • Find YOLO notebook that uses video - git:notebooks-from-colab/nbs
    • Find LLAMA model training notebook - MSI:/gqc/git/gqc/ai3/
    • Find locations of sample videos from AI3 on MSI & HP laptop
  • To Ask

    • [SK] Adding CCTV-apps and pipe-breaks projects on JIRA
    • [SK] When to start working on the linting issues on SWC and SWMM.
      • answered - Work on 8/17

Aug 17th 2023

  • Committed changes from TODOs and documentation updating to github
  • TODO
    • Run tree on HP laptop and save it to desktop.
    • Fix linter warnings on SWC and SWMM
      • Raised PRs in both the repositories after testing for no functionality breakage.
      • SWC- PR #57, SWMM- PR #6 : Both are tracked on JIRA
  • AI3:
    • Dictionary / Jagged array previously used might have been changed from 2-d to 1-d.

Aug 18th 2023

  • Fixed new Lint warning issue task on SWMM (PR #7).
  • Updated AI3 file locations in the phase3_roadmap.md.
  • TODO: Ask Sudhir on next weeks' schedule
    • WFH - Monday, Tuesday
    • Tentative - Wednesday
    • Office - Thursday, friday