Giter Site home page Giter Site logo

autonomousvision / good Goto Github PK

View Code? Open in Web Editor NEW
39.0 39.0 7.0 20.7 MB

[ICLR'23] GOOD: Exploring Geometric Cues for Detecting Objects in an Open World

License: MIT License

Python 99.89% Dockerfile 0.06% Shell 0.05%
class-agnostic-detection object-detection open-world open-world-detection

good's Introduction

Autonomous Vision Blog

This is the blog of the Autonomous Vision Group at MPI-IS Tübingen and University of Tübingen. You can visit our blog at https://autonomousvision.github.io. Also check out our website to learn more about our research.

Overview

Creating a blog post follows the usual git workflow:

  1. clone repository:

    git clone https://github.com/autonomousvision/autonomousvision.github.io.git
    
  2. create new branch for your post:

    git branch my-post
    git checkout my-post
    
  3. work on branch / push my-post branch for collaboration

  4. rebase master on your branch and squash commits (note that all your commits to master will be visible in the git history):

    git checkout master
    git rebase -i my-post
    
  5. push master

    git push origin master
    
  6. delete your branch

    locally:

    git branch -d my-post
    

    and remotely if you pushed your branch in step 3:

    git push origin --delete my-post
    

Instructions for Authors

To write a new blog entry, first register yourself as an author in authors.yml. Here, you can also add your email address and links to your social media accounts etc.

You can then create a new blog post by adding a markdown or html file in the _posts folder. Please use the format YYYY-MM-DD-YOUR_TITLE.{md,html} for naming the file. You can then create a yaml header where you specify the author, the category of the post, tags, etc. For more information, take a look at existing posts and the Minimal Mistakes documentation.

If you want to include images or other assets, create a subfolder in the assets/posts folder with the same name as the filename of your blog post (without extension). You can simply reference your assets in your post using {{ site.url }}/assets/posts/YYYY-MM-DD-YOUR_TITLE/ followed by the filename of the corresponding asset. Make sure that you don't forget to include the {{ site.url }}! While the post while be rendered correctly without the {{ site.url }}, the images in the newsfeed will break if you don't include it.

Please keep in mind that all your commits to master will appear in the git history. To keep this history clean, it might make sense to edit your post in a separate (private) branch and then merge this branch into master.

Offline editing

When you do offline editing, you probably want to build the website offline for a preview. To this end, you first have to install Ruby and Jekyll. Then, you have to install the dependencies (called Gems) for the website:

bundle

Now, you are ready to build and serve the website using

 bundle exec jekyll serve

Sometimes Jekyll hiccups over character encoding. In this case, try

 LANG=en_US.UTF-8 LC_ALL=en_US.UTF-8 bundle exec jekyll serve

If you encounter GemNotFoundException, try to remove

BUNDLED WITH
    2.0.1

from Gemfile.lock.

This command will build the website and serve it at http://localhost:4000. When you save changes, the website will be automatically rebuilt in the background. Note, however, that changes to _config.yaml will not be tracked which means that you have to restart the jekyll server after configuration changes.

References

You can find more information here:

good's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

good's Issues

[Reimplementation] some question about reimplementation

Prerequisite

💬 Describe the reimplementation questions

Thank you for your contribution.
How can I modify the code to produce the $AR_A$? I evaluated the VOC-NonVOC model you provided and received the following results:
Screenshot2023-12-24 09 51 14

It seems there are no results about $AR_A$?

Environment

None

Expected results

$AR_A$

Additional information

None

[Reimplementation] concerning geometric cues

Prerequisite

💬 Describe the reimplementation questions

the geometric cues for reproducation is further needed.

Environment

3090, cuda 11.1

Expected results

the geometric cues for reproducation is further needed.

Additional information

Thank you for your excellent work.

I am in the process of reproducing the results from the first and second stages of your project. To facilitate this, could you kindly share the generated geometric cues? Access to these would be immensely helpful and could also increase interest and activity in this repository.

[Reimplementation] Not able to reimplement the final performance

Prerequisite

💬 Describe the reimplementation questions

I tried to re-implement the GOOD results for voc-to-nonvoc setting and I am getting a lower performance. I trainied bot the stages from scratch following the instructions (i.e. generated depth and normal images, trained stage1 and stage 2). Here are the final results:

Average Precision (AP) @[ IoU=0.50:0.95 | area= all | maxDets=100 ] = 0.041
Average Precision (AP) @[ IoU=0.50 | area= all | maxDets=100 ] = 0.064
Average Precision (AP) @[ IoU=0.75 | area= all | maxDets=100 ] = 0.040
Average Precision (AP) @[ IoU=0.50:0.95 | area= small | maxDets=100 ] = 0.026
Average Precision (AP) @[ IoU=0.50:0.95 | area=medium | maxDets=100 ] = 0.051
Average Precision (AP) @[ IoU=0.50:0.95 | area= large | maxDets=100 ] = 0.073
Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets= 10 ] = 0.173
Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets= 20 ] = 0.243
Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets= 30 ] = 0.284
Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets= 50 ] = 0.336
Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets=100 ] = 0.388
Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets=300 ] = 0.448
Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets=500 ] = 0.469
Average Recall (AR) @[ IoU=0.50:0.95 | area= small | maxDets=100 ] = 0.220
Average Recall (AR) @[ IoU=0.50:0.95 | area=medium | maxDets=100 ] = 0.472
Average Recall (AR) @[ IoU=0.50:0.95 | area= large | maxDets=100 ] = 0.611

As you can see, the AR@100 is 0.5% lower than what is reported in the paper. On comparing pseudoboxes that I get from stage 1 to the provided pseudoboxes, there are some differences. Is there a way to replicate stage-1 output?

Thanks!

Environment

Followed the same environment as given in the instructions.

Expected results

No response

Additional information

No response

[Reimplementation]

Prerequisite

💬 Describe the reimplementation questions

Thanks for your preferct work. I have some confuse when reimplemented your work.

  1. Why img_norm_cfg in config file "phase1_depth.py" different to "phase2_good.py" and "oln_box.py"
# phase1_depth.py
img_norm_cfg = dict(
    mean=[101.5219, 159.6869,  97.8256], std=[53.7791, 52.5693, 34.5755], to_rgb=False)
# phase2_good.py and oln_box.py
img_norm_cfg = dict(
    mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True)

How to obtain the regularization parameters dict(mean=[101.5219, 159.6869, 97.8256], std=[53.7791, 52.5693, 34.5755], to_rgb=False) in "phase1_depth.py"?

  1. The starting lr in paper is 0.01 but in config file is 0.02, which one should I choose?

Environment

The same to your work.

Expected results

No response

Additional information

No response

Missing config files

Hi, it seems two config files are missing when running the extract_outputs.py to produce depth or normal maps.

Could you provide the mmdet_config_ori.py and mmdet_config_576.py? Thanks!

[Feature] concerning ablation study in paper

What's the feature?

Thank you for your contribution.
Why don't you extract pseudo labels by combining the boxes predicted by the normal, depth, and RGB models?

Any other context?

No response

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.