MbtDistanceCylinder

class MbtDistanceCylinder(self)

Bases: pybind11_object

Manage a cylinder used in the model-based tracker.

Basic constructor

Methods

__init__

Basic constructor

buildFrom

Build a vpMbtDistanceCylinder thanks to two points corresponding to the extremities of its axis and its radius.

computeInteractionMatrixError

Compute the interaction matrix and the error vector corresponding to the cylinder.

display

Overloaded function.

displayMovingEdges

Overloaded function.

getCameraParameters

Get the camera parameters.

getFeaturesForDisplay

Return a list of features parameters for display.

getIndex

Get the index of the cylinder.

getMeanWeight1

Get the mean weight of the first line.

getMeanWeight2

Get the mean weight of the second line.

getModelForDisplay

Return a list of line parameters to display the primitive at a given pose and camera parameters.

getName

Get the name of the cylinder.

initInteractionMatrixError

Initialize the size of the interaction matrix and the error vector.

isTracked

Return if the cylinder is used for tracking.

isVisible

Check if the cylinder is visible in the image or not.

setCameraParameters

Set the camera parameters.

setIndex

Set the index of the cylinder.

setMeanWeight1

Set the mean weight of the first line.

setMeanWeight2

Set the mean weight of the second line.

setName

Overloaded function.

setTracked

Set if the cylinder has to considered during tracking phase.

setVisible

Set a boolean parameter to indicates if the cylinder is visible in the image or not.

trackMovingEdge

Track the moving edges in the image.

updateMovingEdge

Update the moving edges internal parameters.

Inherited Methods

Operators

__doc__

__init__

Basic constructor

__module__

Attributes

L

Reinit

__annotations__

error

index_polygon

isvisible

nbFeature

nbFeaturel1

nbFeaturel2

radius

__init__(self)

Basic constructor

buildFrom(self, _p1: visp._visp.core.Point, _p2: visp._visp.core.Point, r: float) None

Build a vpMbtDistanceCylinder thanks to two points corresponding to the extremities of its axis and its radius.

Parameters:
_p1: visp._visp.core.Point

The first extremity on the axis.

_p2: visp._visp.core.Point

The second extremity on the axis.

r: float

Radius of the cylinder.

computeInteractionMatrixError(self, cMo: visp._visp.core.HomogeneousMatrix, I: visp._visp.core.ImageGray) None

Compute the interaction matrix and the error vector corresponding to the cylinder.

display(*args, **kwargs)

Overloaded function.

  1. display(self: visp._visp.mbt.MbtDistanceCylinder, I: visp._visp.core.ImageGray, cMo: visp._visp.core.HomogeneousMatrix, cam: visp._visp.core.CameraParameters, col: visp._visp.core.Color, thickness: int = 1, displayFullModel: bool = false) -> None

Display the cylinder. The 3D cylinder is projected into the image.

Parameters:
I

The image.

cMo

Pose used to project the 3D model into the image.

col

The desired color.

thickness

The thickness of the lines.

displayFullModel

When true, display the circle even if non visible.

  1. display(self: visp._visp.mbt.MbtDistanceCylinder, I: visp._visp.core.ImageRGBa, cMo: visp._visp.core.HomogeneousMatrix, cam: visp._visp.core.CameraParameters, col: visp._visp.core.Color, thickness: int = 1, displayFullModel: bool = false) -> None

Display the cylinder. The 3D cylinder is projected into the image.

Parameters:
I

The image.

cMo

Pose used to project the 3D model into the image.

col

The desired color.

thickness

The thickness of the lines.

displayFullModel

When true, display the circle even if non visible.

displayMovingEdges(*args, **kwargs)

Overloaded function.

  1. displayMovingEdges(self: visp._visp.mbt.MbtDistanceCylinder, I: visp._visp.core.ImageGray) -> None

Enable to display the points along the lines with a color corresponding to their state.

  • If green : The vpMeSite is a good point.

  • If blue : The point is removed because of the vpMeSite tracking phase (contrast problem).

  • If purple : The point is removed because of the vpMeSite tracking phase (threshold problem).

  • If blue : The point is removed because of the robust method in the virtual visual servoing.

Parameters:
I

The image.

  1. displayMovingEdges(self: visp._visp.mbt.MbtDistanceCylinder, I: visp._visp.core.ImageRGBa) -> None

getCameraParameters(self, camera: visp._visp.core.CameraParameters) None

Get the camera parameters.

Parameters:
camera: visp._visp.core.CameraParameters

The vpCameraParameters used to store the camera parameters.

getFeaturesForDisplay(self) list[list[float]]

Return a list of features parameters for display.

  • Parameters are: <feature id (here 0 for ME)> , <pt.i()> , <pt.j()> , <state>

getIndex(self) int

Get the index of the cylinder.

Returns:

Return the index of the line.

getMeanWeight1(self) float

Get the mean weight of the first line. The mean weight is computed thanks to the weight of each moving edge. Those weights are computed by the robust estimation method used during the virtual visual servoing.

Returns:

The mean weight of the first line.

getMeanWeight2(self) float

Get the mean weight of the second line. The mean weight is computed thanks to the weight of each moving edge. Those weights are computed by the robust estimation method used during the virtual visual servoing.

Returns:

The mean weight of the second line.

getModelForDisplay(self, width: int, height: int, cMo: visp._visp.core.HomogeneousMatrix, cam: visp._visp.core.CameraParameters, displayFullModel: bool = false) list[list[float]]

Return a list of line parameters to display the primitive at a given pose and camera parameters.

  • Parameters are: <primitive id (here 0 for line)> , <pt_start.i()> , <pt_start.j()> , <pt_end.i()> , <pt_end.j()>

Parameters:
width: int

Image size (unused parameters).

height: int

Image size (unused parameters).

cMo: visp._visp.core.HomogeneousMatrix

Pose used to project the 3D model into the image.

displayFullModel: bool = false

If true, the line is displayed even if it is not

getName(self) str

Get the name of the cylinder.

Returns:

Return the name of the cylinder

initInteractionMatrixError(self) None

Initialize the size of the interaction matrix and the error vector.

isTracked(self) bool

Return if the cylinder is used for tracking.

Returns:

True if it is used, False otherwise.

isVisible(self) bool

Check if the cylinder is visible in the image or not.

Returns:

Return true if the cylinder is visible

setCameraParameters(self, camera: visp._visp.core.CameraParameters) None

Set the camera parameters.

Parameters:
camera: visp._visp.core.CameraParameters

The camera parameters.

setIndex(self, i: int) None

Set the index of the cylinder.

Parameters:
i: int

The index number

setMeanWeight1(self, wmean: float) None

Set the mean weight of the first line.

Parameters:
wmean: float

The mean weight of the first line.

setMeanWeight2(self, wmean: float) None

Set the mean weight of the second line.

Parameters:
wmean: float

The mean weight of the second line.

setName(*args, **kwargs)

Overloaded function.

  1. setName(self: visp._visp.mbt.MbtDistanceCylinder, cyl_name: str) -> None

Set the name of the cylinder.

Parameters:
cyl_name

The name of the cylinder.

  1. setName(self: visp._visp.mbt.MbtDistanceCylinder, cyl_name: str) -> None

Set the name of the cylinder.

Parameters:
cyl_name

The name of the cylinder

setTracked(self, track: bool) None

Set if the cylinder has to considered during tracking phase.

Parameters:
track: bool

True if the cylinder has to be tracked, False otherwise.

setVisible(self, _isvisible: bool) None

Set a boolean parameter to indicates if the cylinder is visible in the image or not.

Parameters:
_isvisible: bool

Set to true if the cylinder is visible

trackMovingEdge(self, I: visp._visp.core.ImageGray, cMo: visp._visp.core.HomogeneousMatrix) None

Track the moving edges in the image.

Parameters:
I: visp._visp.core.ImageGray

the image.

cMo: visp._visp.core.HomogeneousMatrix

The pose of the camera.

updateMovingEdge(self, I: visp._visp.core.ImageGray, cMo: visp._visp.core.HomogeneousMatrix) None

Update the moving edges internal parameters.

Parameters:
I: visp._visp.core.ImageGray

the image.

cMo: visp._visp.core.HomogeneousMatrix

The pose of the camera.