Giter VIP home page Giter VIP logo

Comments (9)

debidatta avatar debidatta commented on May 6, 2024 3

Apologies for the inconvenience.

JSON should be in following format:

{
  "VIDEO_NAME1": {
    "LABELER_ID": {
      "PHASE LABEL 1": [
        START TIME IN MICROSECOND, 
        END TIME IN MICROSECOND
      ], 
     "PHASE LABEL 2": [
        START TIME IN MICROSECOND, 
        END TIME IN MICROSECOND
      ], 
    }
  },
"VIDEO_NAME2": {
    "LABELER_ID": {
      "PHASE LABEL 1": [
        START TIME IN MICROSECOND, 
        END TIME IN MICROSECOND
      ], 
     "PHASE LABEL 2": [
        START TIME IN MICROSECOND, 
        END TIME IN MICROSECOND
      ], 
    }
  },
} 

An example of JSON entry looks like this:

{
  "clearsoda_to_white12_real_view_0": {
    "0": {
      "0": [
        42246.0, 
        1232406.0
      ], 
      "1": [
        1265775.0, 
        2111123.0
      ], 
      "2": [
        2144492.0, 
        4469198.0
      ], 
      "3": [
        4502567.0, 
        4847380.0
      ], 
      "4": [
        4880749.0, 
        6226631.0
      ]
    }
  }, 
}

Please note that by default we extend the first label to beginning of video and the last label to the end of video. We also assign the nearest timestamp's label to to any timestamp that doesn't fall in the segments in the JSON file. This is done to ensure that each frame has a label. You might want to provide your own dummy labels for frames not covered by any segments. Also consider modifying the annotation generating function.

from google-research.

debidatta avatar debidatta commented on May 6, 2024 3

No problem. Happy to help.

from google-research.

debidatta avatar debidatta commented on May 6, 2024 2

This means that your dataset doesn't have per-frame labels but your config.py does. You can set

DATA.FRAME_LABELS: false

in config.py. Also remove 'classification', 'few_shot_classification' , 'event_completion' from EVAL.TASKS in config.py. These tasks also need per-frame labels for evaluation.

from google-research.

yuanzhedong avatar yuanzhedong commented on May 6, 2024

Hi @debidatta

I'm trying to create my own dataset too, but have trouble to convert per frame labels and converted to the tfrecord? I saw the create_tfrecords function which will take a JSON label file, do you have an example of how this JSON file will look like?

from google-research.

yuanzhedong avatar yuanzhedong commented on May 6, 2024

Really appreciate the quick response!! That example helps a lot, thanks!

from google-research.

yuanzhedong avatar yuanzhedong commented on May 6, 2024

Hi @debidatta sorry to pin you again. Maybe you can help with this issue too when you have time: #52 as well. Basically do we actually need per frame label to train TCC? Seems like per frame label is just for evaluation, right? Thank you!

from google-research.

yuanzhedong avatar yuanzhedong commented on May 6, 2024

Found it, need to set CONFIG.DATA.FRAME_LABELS = False

from google-research.

iperov avatar iperov commented on May 6, 2024

I thought that is unsupervised model, but it requires to label something :-\

from google-research.

debidatta avatar debidatta commented on May 6, 2024

Per-frame labels are only required to evaluate the model. You can still train a model without those labels. The default config has CONFIG.DATA.FRAME_LABELS = True. Setting it to False should allow you train a model and evaluate on 2 tasks: algo_loss and kendalls_tau.

from google-research.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.