Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

question on synthetic dataset #10

Open
zeshunzong opened this issue Jul 3, 2024 · 2 comments
Open

question on synthetic dataset #10

zeshunzong opened this issue Jul 3, 2024 · 2 comments
Assignees

Comments

@zeshunzong
Copy link

Hi,

Nice work!

For the synthetic data in blender, I was wondering how do you get the readout time? Do you use Camera -> Motion Blur -> Rolling shutter to get the effect? Is your readout time obtained from the shutter input? That is, when shutter = 1.0, readout time = 1/FPS?

@Bercon
Copy link

Bercon commented Jul 5, 2024

Yes, we used the Cycles rolling shutter feature to get the effect. You can find the blend files here: https://zenodo.org/records/10847884, check out the Python scripts within the blend files that are used to render the data in desired format.

The important bits are below. Define how much exposure and rolling shutter effect you want:

EXPOSURE_TIME = 1.0
ROLLING_SHUTTER_TIME = 3.0

Compute the ratio for Cycles:

MOTION_BLUR_ROLLING_SHUTTER_RATIO = EXPOSURE_TIME / (EXPOSURE_TIME + ROLLING_SHUTTER_TIME)

Apply setting to Cycles:

scene.cycles.rolling_shutter_duration = MOTION_BLUR_ROLLING_SHUTTER_RATIO

Save json with the values (in addition to start & end pose of each frame):

...    
    'exposure_time': EXPOSURE_TIME,
    'rolling_shutter_time': ROLLING_SHUTTER_TIME,
... 

@zeshunzong
Copy link
Author

zeshunzong commented Jul 8, 2024

Thank you very much for you response!

I guess my main confusion is what is the unit for EXPOSURE_TIME and ROLLING_SHUTTER_TIME.

From the script related to rendering

scene.render.use_motion_blur = True
scene.cycles.motion_blur_position = 'START'
scene.render.motion_blur_shutter = 1.0
scene.cycles.rolling_shutter_type = 'TOP'
scene.cycles.rolling_shutter_duration = MOTION_BLUR_ROLLING_SHUTTER_RATIO

It seems that the total time of camera considered for rendering this image is fixed for 1 frame (i.e. 1/FPS second), and the only thing that changes when you set different EXPOSURE_TIME and ROLLING_SHUTTER_TIME is the ratio, i.e. scene.cycles.rolling_shutter_duration.

Then when you set, for instance

EXPOSURE_TIME = 1.0
ROLLING_SHUTTER_TIME = 3.0

what are the corresponding values (and units) for $T_e$ and $T_{ro}$ as in Eq (3) in the paper?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants