Skip to content

Add new message for BoundingBox sub-sections #685

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

Closed
wants to merge 13 commits into from
Closed

Add new message for BoundingBox sub-sections #685

wants to merge 13 commits into from

Conversation

ndunningbmw
Copy link
Contributor

@ndunningbmw ndunningbmw commented Nov 7, 2022

Reference to a related issue in the repository

Add a reference to a related issue in the repository.

Add a description

This PR proposes the addition of bounding box sub-sections to BaseMoving and BaseStationary objects, to help sub-divide and classify different parts of the overall object structure.

Some questions to ask:
What is this change?
What does it fix?
Is this a bug fix or a feature? Does it break any existing functionality or force me to update to a new version?
How has it been tested?

Take this checklist as orientation for yourself, if this PR is ready for the Change Control Board:

If you can’t check all of them, please explain why.
If all boxes are checked or commented and you have achieved at least one positive review, you can assign the label ReadyForCCBReview!

osi_common.proto Outdated

// Sub-divisions of the overall bounding box of the BaseMoving object.
//
// \note The bounding box sections can include side mirrors for vehicles.
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
// \note The bounding box sections can include side mirrors for vehicles.
// \note The bounding box sections can include side mirrors, doors, etc. for vehicles.

@ThomasNaderBMW
Copy link
Contributor

Hi @tbleher , hi Jakob Peintner,

would you also like to give a review on this PR?

@ThomasNaderBMW ThomasNaderBMW added this to the V3.6.0 milestone Nov 21, 2022
osi_common.proto Outdated
TYPE_LIMB = 7;
TYPE_HEAD = 8;

// TODO: Do we want to handle data for BaseStationary here as well? What problems would having this solve?
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Outcome WG Other Models (21th Nov): We want to handle the most significant cases for stationary objects here as well (e.g. tree trunk, tree crown, ...).

@ndunningbmw ndunningbmw marked this pull request as ready for review December 1, 2022 16:06
Comment on lines +698 to +700
// within the bounds of the \c #dimension . Currently there several accepted
// exceptions to this rule, specifically the sub-sections for cargo, vehicle
// side mirrors, and doors not in the their closed position.
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Proposal: Move the text for the "exceptional cases" to the enum field where they would be used from.

Comment on lines +463 to +465
// The wheel of a vehicle.
//
TYPE_WHEEL = 6;
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Proposal: Mention the data encoded in MovingObject/VehicleAttributes/WheelData and in which case this one should be used, and how the 2 fields are different

@ThomasNaderBMW ThomasNaderBMW added the ReadyForCCBReview Indicates that this MR is ready for a final review and merge by the CCB. label Dec 5, 2022
@tbleher
Copy link
Contributor

tbleher commented Dec 5, 2022

Hi @tbleher , hi Jakob Peintner,

would you also like to give a review on this PR?

I think the initative is a good one :)
I can only really talk about bounding boxes of static objects (which is what I'm currently looking at for the OSIPedestrian model): it's very good for e.g. pedestrian models if tree trunk and tree arm can be separated (and similarly light pole and light arm). However, I have two main concerns with the proposal right now:

  • How would this be filled in from OpenDRIVE? A static object in OpenDRIVE can have an arbitrary number of bounding boxes, so one would expect that a tree has two bounding boxes. But there is no labeling of the bounding boxes. So how would one know which one is which? (Of course, I can add a heuristic to the code, but most implementations will probably just make it TYPE_OTHER, since OpenDRIVE doesn't have these labels).
  • I see no language in the proposal that the object is fully contained in the sub-bounding boxes. So AFAICS there is no assurance that if I have a tree with sub-bounding boxes, that the tree is only in that sub-area, and the pedestrian can walk freely in areas that are covered by the parent dimension, but is not filled by the specific bounding boxes. Without this guarantee, the sub-bounding boxes are useless for the purpose of pedestrian models.

So, speaking as someone creating agent models, it would be much more important to have the ability to segment an object such that one has the guarantee that some areas of the dimension are in fact free. For such use-cases, the exact type does not matter at all, and could be left out. Is there any user who cares about this (the type distinction) for static objects like trees and traffic lights? I can see how this is important for wheels vs mirrors and such, but not so much for crown vs trunk - I just want to have a better 3D approximation of the tree so the pedestrian can accurately walk around it.

ndunningbmw and others added 9 commits December 6, 2022 16:13
Signed-off-by: Nicholas Dunning <Nicholas.Dunning@bmw.de>
Signed-off-by: Nicholas Dunning <Nicholas.Dunning@bmw.de>
Signed-off-by: Nicholas Dunning <Nicholas.Dunning@bmw.de>
Signed-off-by: Nicholas Dunning <Nicholas.Dunning@bmw.de>
Change version naming for master branch, update Ubuntu image, and add Antora generator trigger.

Signed-off-by: Philip Windecker <philip.windecker@avenyr.de>
Signed-off-by: Philip Windecker <95633467+philipwindecker@users.noreply.github.com>
Signed-off-by: Pierre R. Mai <pmai@pmsf.de>
Signed-off-by: Nicholas Dunning <Nicholas.Dunning@bmw.de>
Since no secrets will be available for security reasons, do not try to
trigger antora builds when those secrets are not available.

Signed-off-by: Pierre R. Mai <pmai@pmsf.de>
Signed-off-by: Nicholas Dunning <Nicholas.Dunning@bmw.de>
Aligns variability attribute description with existing enum description

Signed-off-by: Thomas Sedlmayer <tsedlmayer@pmsfit.de>
Signed-off-by: Nicholas Dunning <Nicholas.Dunning@bmw.de>
@ndunningbmw ndunningbmw closed this by deleting the head repository Dec 6, 2022
@ndunningbmw ndunningbmw reopened this Dec 6, 2022
@ndunningbmw ndunningbmw closed this Dec 6, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Other Models ReadyForCCBReview Indicates that this MR is ready for a final review and merge by the CCB.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants