_RobotMeasurement.py
Go to the documentation of this file.
00001 """autogenerated by genpy from camera_pose_calibration/RobotMeasurement.msg. Do not edit."""
00002 import sys
00003 python3 = True if sys.hexversion > 0x03000000 else False
00004 import genpy
00005 import struct
00006 
00007 import sensor_msgs.msg
00008 import camera_pose_calibration.msg
00009 import geometry_msgs.msg
00010 import calibration_msgs.msg
00011 import std_msgs.msg
00012 
00013 class RobotMeasurement(genpy.Message):
00014   _md5sum = "b245ac2435925ecb8e4bf5475545f405"
00015   _type = "camera_pose_calibration/RobotMeasurement"
00016   _has_header = True #flag to mark the presence of a Header object
00017   _full_text = """Header header
00018 CameraMeasurement[] M_cam
00019 
00020 ================================================================================
00021 MSG: std_msgs/Header
00022 # Standard metadata for higher-level stamped data types.
00023 # This is generally used to communicate timestamped data 
00024 # in a particular coordinate frame.
00025 # 
00026 # sequence ID: consecutively increasing ID 
00027 uint32 seq
00028 #Two-integer timestamp that is expressed as:
00029 # * stamp.secs: seconds (stamp_secs) since epoch
00030 # * stamp.nsecs: nanoseconds since stamp_secs
00031 # time-handling sugar is provided by the client library
00032 time stamp
00033 #Frame this data is associated with
00034 # 0: no frame
00035 # 1: global frame
00036 string frame_id
00037 
00038 ================================================================================
00039 MSG: camera_pose_calibration/CameraMeasurement
00040 Header header
00041 string camera_id
00042 calibration_msgs/CalibrationPattern features
00043 sensor_msgs/CameraInfo cam_info
00044 
00045 ================================================================================
00046 MSG: calibration_msgs/CalibrationPattern
00047 Header header
00048 geometry_msgs/Point[] object_points
00049 geometry_msgs/Point[] image_points
00050 uint8 success
00051 
00052 ================================================================================
00053 MSG: geometry_msgs/Point
00054 # This contains the position of a point in free space
00055 float64 x
00056 float64 y
00057 float64 z
00058 
00059 ================================================================================
00060 MSG: sensor_msgs/CameraInfo
00061 # This message defines meta information for a camera. It should be in a
00062 # camera namespace on topic "camera_info" and accompanied by up to five
00063 # image topics named:
00064 #
00065 #   image_raw - raw data from the camera driver, possibly Bayer encoded
00066 #   image            - monochrome, distorted
00067 #   image_color      - color, distorted
00068 #   image_rect       - monochrome, rectified
00069 #   image_rect_color - color, rectified
00070 #
00071 # The image_pipeline contains packages (image_proc, stereo_image_proc)
00072 # for producing the four processed image topics from image_raw and
00073 # camera_info. The meaning of the camera parameters are described in
00074 # detail at http://www.ros.org/wiki/image_pipeline/CameraInfo.
00075 #
00076 # The image_geometry package provides a user-friendly interface to
00077 # common operations using this meta information. If you want to, e.g.,
00078 # project a 3d point into image coordinates, we strongly recommend
00079 # using image_geometry.
00080 #
00081 # If the camera is uncalibrated, the matrices D, K, R, P should be left
00082 # zeroed out. In particular, clients may assume that K[0] == 0.0
00083 # indicates an uncalibrated camera.
00084 
00085 #######################################################################
00086 #                     Image acquisition info                          #
00087 #######################################################################
00088 
00089 # Time of image acquisition, camera coordinate frame ID
00090 Header header    # Header timestamp should be acquisition time of image
00091                  # Header frame_id should be optical frame of camera
00092                  # origin of frame should be optical center of camera
00093                  # +x should point to the right in the image
00094                  # +y should point down in the image
00095                  # +z should point into the plane of the image
00096 
00097 
00098 #######################################################################
00099 #                      Calibration Parameters                         #
00100 #######################################################################
00101 # These are fixed during camera calibration. Their values will be the #
00102 # same in all messages until the camera is recalibrated. Note that    #
00103 # self-calibrating systems may "recalibrate" frequently.              #
00104 #                                                                     #
00105 # The internal parameters can be used to warp a raw (distorted) image #
00106 # to:                                                                 #
00107 #   1. An undistorted image (requires D and K)                        #
00108 #   2. A rectified image (requires D, K, R)                           #
00109 # The projection matrix P projects 3D points into the rectified image.#
00110 #######################################################################
00111 
00112 # The image dimensions with which the camera was calibrated. Normally
00113 # this will be the full camera resolution in pixels.
00114 uint32 height
00115 uint32 width
00116 
00117 # The distortion model used. Supported models are listed in
00118 # sensor_msgs/distortion_models.h. For most cameras, "plumb_bob" - a
00119 # simple model of radial and tangential distortion - is sufficent.
00120 string distortion_model
00121 
00122 # The distortion parameters, size depending on the distortion model.
00123 # For "plumb_bob", the 5 parameters are: (k1, k2, t1, t2, k3).
00124 float64[] D
00125 
00126 # Intrinsic camera matrix for the raw (distorted) images.
00127 #     [fx  0 cx]
00128 # K = [ 0 fy cy]
00129 #     [ 0  0  1]
00130 # Projects 3D points in the camera coordinate frame to 2D pixel
00131 # coordinates using the focal lengths (fx, fy) and principal point
00132 # (cx, cy).
00133 float64[9]  K # 3x3 row-major matrix
00134 
00135 # Rectification matrix (stereo cameras only)
00136 # A rotation matrix aligning the camera coordinate system to the ideal
00137 # stereo image plane so that epipolar lines in both stereo images are
00138 # parallel.
00139 float64[9]  R # 3x3 row-major matrix
00140 
00141 # Projection/camera matrix
00142 #     [fx'  0  cx' Tx]
00143 # P = [ 0  fy' cy' Ty]
00144 #     [ 0   0   1   0]
00145 # By convention, this matrix specifies the intrinsic (camera) matrix
00146 #  of the processed (rectified) image. That is, the left 3x3 portion
00147 #  is the normal camera intrinsic matrix for the rectified image.
00148 # It projects 3D points in the camera coordinate frame to 2D pixel
00149 #  coordinates using the focal lengths (fx', fy') and principal point
00150 #  (cx', cy') - these may differ from the values in K.
00151 # For monocular cameras, Tx = Ty = 0. Normally, monocular cameras will
00152 #  also have R = the identity and P[1:3,1:3] = K.
00153 # For a stereo pair, the fourth column [Tx Ty 0]' is related to the
00154 #  position of the optical center of the second camera in the first
00155 #  camera's frame. We assume Tz = 0 so both cameras are in the same
00156 #  stereo image plane. The first camera always has Tx = Ty = 0. For
00157 #  the right (second) camera of a horizontal stereo pair, Ty = 0 and
00158 #  Tx = -fx' * B, where B is the baseline between the cameras.
00159 # Given a 3D point [X Y Z]', the projection (x, y) of the point onto
00160 #  the rectified image is given by:
00161 #  [u v w]' = P * [X Y Z 1]'
00162 #         x = u / w
00163 #         y = v / w
00164 #  This holds for both images of a stereo pair.
00165 float64[12] P # 3x4 row-major matrix
00166 
00167 
00168 #######################################################################
00169 #                      Operational Parameters                         #
00170 #######################################################################
00171 # These define the image region actually captured by the camera       #
00172 # driver. Although they affect the geometry of the output image, they #
00173 # may be changed freely without recalibrating the camera.             #
00174 #######################################################################
00175 
00176 # Binning refers here to any camera setting which combines rectangular
00177 #  neighborhoods of pixels into larger "super-pixels." It reduces the
00178 #  resolution of the output image to
00179 #  (width / binning_x) x (height / binning_y).
00180 # The default values binning_x = binning_y = 0 is considered the same
00181 #  as binning_x = binning_y = 1 (no subsampling).
00182 uint32 binning_x
00183 uint32 binning_y
00184 
00185 # Region of interest (subwindow of full camera resolution), given in
00186 #  full resolution (unbinned) image coordinates. A particular ROI
00187 #  always denotes the same window of pixels on the camera sensor,
00188 #  regardless of binning settings.
00189 # The default setting of roi (all values 0) is considered the same as
00190 #  full resolution (roi.width = width, roi.height = height).
00191 RegionOfInterest roi
00192 
00193 ================================================================================
00194 MSG: sensor_msgs/RegionOfInterest
00195 # This message is used to specify a region of interest within an image.
00196 #
00197 # When used to specify the ROI setting of the camera when the image was
00198 # taken, the height and width fields should either match the height and
00199 # width fields for the associated image; or height = width = 0
00200 # indicates that the full resolution image was captured.
00201 
00202 uint32 x_offset  # Leftmost pixel of the ROI
00203                  # (0 if the ROI includes the left edge of the image)
00204 uint32 y_offset  # Topmost pixel of the ROI
00205                  # (0 if the ROI includes the top edge of the image)
00206 uint32 height    # Height of ROI
00207 uint32 width     # Width of ROI
00208 
00209 # True if a distinct rectified ROI should be calculated from the "raw"
00210 # ROI in this message. Typically this should be False if the full image
00211 # is captured (ROI not used), and True if a subwindow is captured (ROI
00212 # used).
00213 bool do_rectify
00214 
00215 """
00216   __slots__ = ['header','M_cam']
00217   _slot_types = ['std_msgs/Header','camera_pose_calibration/CameraMeasurement[]']
00218 
00219   def __init__(self, *args, **kwds):
00220     """
00221     Constructor. Any message fields that are implicitly/explicitly
00222     set to None will be assigned a default value. The recommend
00223     use is keyword arguments as this is more robust to future message
00224     changes.  You cannot mix in-order arguments and keyword arguments.
00225 
00226     The available fields are:
00227        header,M_cam
00228 
00229     :param args: complete set of field values, in .msg order
00230     :param kwds: use keyword arguments corresponding to message field names
00231     to set specific fields.
00232     """
00233     if args or kwds:
00234       super(RobotMeasurement, self).__init__(*args, **kwds)
00235       #message fields cannot be None, assign default values for those that are
00236       if self.header is None:
00237         self.header = std_msgs.msg.Header()
00238       if self.M_cam is None:
00239         self.M_cam = []
00240     else:
00241       self.header = std_msgs.msg.Header()
00242       self.M_cam = []
00243 
00244   def _get_types(self):
00245     """
00246     internal API method
00247     """
00248     return self._slot_types
00249 
00250   def serialize(self, buff):
00251     """
00252     serialize message into buffer
00253     :param buff: buffer, ``StringIO``
00254     """
00255     try:
00256       _x = self
00257       buff.write(_struct_3I.pack(_x.header.seq, _x.header.stamp.secs, _x.header.stamp.nsecs))
00258       _x = self.header.frame_id
00259       length = len(_x)
00260       if python3 or type(_x) == unicode:
00261         _x = _x.encode('utf-8')
00262         length = len(_x)
00263       buff.write(struct.pack('<I%ss'%length, length, _x))
00264       length = len(self.M_cam)
00265       buff.write(_struct_I.pack(length))
00266       for val1 in self.M_cam:
00267         _v1 = val1.header
00268         buff.write(_struct_I.pack(_v1.seq))
00269         _v2 = _v1.stamp
00270         _x = _v2
00271         buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00272         _x = _v1.frame_id
00273         length = len(_x)
00274         if python3 or type(_x) == unicode:
00275           _x = _x.encode('utf-8')
00276           length = len(_x)
00277         buff.write(struct.pack('<I%ss'%length, length, _x))
00278         _x = val1.camera_id
00279         length = len(_x)
00280         if python3 or type(_x) == unicode:
00281           _x = _x.encode('utf-8')
00282           length = len(_x)
00283         buff.write(struct.pack('<I%ss'%length, length, _x))
00284         _v3 = val1.features
00285         _v4 = _v3.header
00286         buff.write(_struct_I.pack(_v4.seq))
00287         _v5 = _v4.stamp
00288         _x = _v5
00289         buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00290         _x = _v4.frame_id
00291         length = len(_x)
00292         if python3 or type(_x) == unicode:
00293           _x = _x.encode('utf-8')
00294           length = len(_x)
00295         buff.write(struct.pack('<I%ss'%length, length, _x))
00296         length = len(_v3.object_points)
00297         buff.write(_struct_I.pack(length))
00298         for val3 in _v3.object_points:
00299           _x = val3
00300           buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00301         length = len(_v3.image_points)
00302         buff.write(_struct_I.pack(length))
00303         for val3 in _v3.image_points:
00304           _x = val3
00305           buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00306         buff.write(_struct_B.pack(_v3.success))
00307         _v6 = val1.cam_info
00308         _v7 = _v6.header
00309         buff.write(_struct_I.pack(_v7.seq))
00310         _v8 = _v7.stamp
00311         _x = _v8
00312         buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00313         _x = _v7.frame_id
00314         length = len(_x)
00315         if python3 or type(_x) == unicode:
00316           _x = _x.encode('utf-8')
00317           length = len(_x)
00318         buff.write(struct.pack('<I%ss'%length, length, _x))
00319         _x = _v6
00320         buff.write(_struct_2I.pack(_x.height, _x.width))
00321         _x = _v6.distortion_model
00322         length = len(_x)
00323         if python3 or type(_x) == unicode:
00324           _x = _x.encode('utf-8')
00325           length = len(_x)
00326         buff.write(struct.pack('<I%ss'%length, length, _x))
00327         length = len(_v6.D)
00328         buff.write(_struct_I.pack(length))
00329         pattern = '<%sd'%length
00330         buff.write(struct.pack(pattern, *_v6.D))
00331         buff.write(_struct_9d.pack(*_v6.K))
00332         buff.write(_struct_9d.pack(*_v6.R))
00333         buff.write(_struct_12d.pack(*_v6.P))
00334         _x = _v6
00335         buff.write(_struct_2I.pack(_x.binning_x, _x.binning_y))
00336         _v9 = _v6.roi
00337         _x = _v9
00338         buff.write(_struct_4IB.pack(_x.x_offset, _x.y_offset, _x.height, _x.width, _x.do_rectify))
00339     except struct.error as se: self._check_types(se)
00340     except TypeError as te: self._check_types(te)
00341 
00342   def deserialize(self, str):
00343     """
00344     unpack serialized message in str into this message instance
00345     :param str: byte array of serialized message, ``str``
00346     """
00347     try:
00348       if self.header is None:
00349         self.header = std_msgs.msg.Header()
00350       if self.M_cam is None:
00351         self.M_cam = None
00352       end = 0
00353       _x = self
00354       start = end
00355       end += 12
00356       (_x.header.seq, _x.header.stamp.secs, _x.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00357       start = end
00358       end += 4
00359       (length,) = _struct_I.unpack(str[start:end])
00360       start = end
00361       end += length
00362       if python3:
00363         self.header.frame_id = str[start:end].decode('utf-8')
00364       else:
00365         self.header.frame_id = str[start:end]
00366       start = end
00367       end += 4
00368       (length,) = _struct_I.unpack(str[start:end])
00369       self.M_cam = []
00370       for i in range(0, length):
00371         val1 = camera_pose_calibration.msg.CameraMeasurement()
00372         _v10 = val1.header
00373         start = end
00374         end += 4
00375         (_v10.seq,) = _struct_I.unpack(str[start:end])
00376         _v11 = _v10.stamp
00377         _x = _v11
00378         start = end
00379         end += 8
00380         (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
00381         start = end
00382         end += 4
00383         (length,) = _struct_I.unpack(str[start:end])
00384         start = end
00385         end += length
00386         if python3:
00387           _v10.frame_id = str[start:end].decode('utf-8')
00388         else:
00389           _v10.frame_id = str[start:end]
00390         start = end
00391         end += 4
00392         (length,) = _struct_I.unpack(str[start:end])
00393         start = end
00394         end += length
00395         if python3:
00396           val1.camera_id = str[start:end].decode('utf-8')
00397         else:
00398           val1.camera_id = str[start:end]
00399         _v12 = val1.features
00400         _v13 = _v12.header
00401         start = end
00402         end += 4
00403         (_v13.seq,) = _struct_I.unpack(str[start:end])
00404         _v14 = _v13.stamp
00405         _x = _v14
00406         start = end
00407         end += 8
00408         (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
00409         start = end
00410         end += 4
00411         (length,) = _struct_I.unpack(str[start:end])
00412         start = end
00413         end += length
00414         if python3:
00415           _v13.frame_id = str[start:end].decode('utf-8')
00416         else:
00417           _v13.frame_id = str[start:end]
00418         start = end
00419         end += 4
00420         (length,) = _struct_I.unpack(str[start:end])
00421         _v12.object_points = []
00422         for i in range(0, length):
00423           val3 = geometry_msgs.msg.Point()
00424           _x = val3
00425           start = end
00426           end += 24
00427           (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
00428           _v12.object_points.append(val3)
00429         start = end
00430         end += 4
00431         (length,) = _struct_I.unpack(str[start:end])
00432         _v12.image_points = []
00433         for i in range(0, length):
00434           val3 = geometry_msgs.msg.Point()
00435           _x = val3
00436           start = end
00437           end += 24
00438           (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
00439           _v12.image_points.append(val3)
00440         start = end
00441         end += 1
00442         (_v12.success,) = _struct_B.unpack(str[start:end])
00443         _v15 = val1.cam_info
00444         _v16 = _v15.header
00445         start = end
00446         end += 4
00447         (_v16.seq,) = _struct_I.unpack(str[start:end])
00448         _v17 = _v16.stamp
00449         _x = _v17
00450         start = end
00451         end += 8
00452         (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
00453         start = end
00454         end += 4
00455         (length,) = _struct_I.unpack(str[start:end])
00456         start = end
00457         end += length
00458         if python3:
00459           _v16.frame_id = str[start:end].decode('utf-8')
00460         else:
00461           _v16.frame_id = str[start:end]
00462         _x = _v15
00463         start = end
00464         end += 8
00465         (_x.height, _x.width,) = _struct_2I.unpack(str[start:end])
00466         start = end
00467         end += 4
00468         (length,) = _struct_I.unpack(str[start:end])
00469         start = end
00470         end += length
00471         if python3:
00472           _v15.distortion_model = str[start:end].decode('utf-8')
00473         else:
00474           _v15.distortion_model = str[start:end]
00475         start = end
00476         end += 4
00477         (length,) = _struct_I.unpack(str[start:end])
00478         pattern = '<%sd'%length
00479         start = end
00480         end += struct.calcsize(pattern)
00481         _v15.D = struct.unpack(pattern, str[start:end])
00482         start = end
00483         end += 72
00484         _v15.K = _struct_9d.unpack(str[start:end])
00485         start = end
00486         end += 72
00487         _v15.R = _struct_9d.unpack(str[start:end])
00488         start = end
00489         end += 96
00490         _v15.P = _struct_12d.unpack(str[start:end])
00491         _x = _v15
00492         start = end
00493         end += 8
00494         (_x.binning_x, _x.binning_y,) = _struct_2I.unpack(str[start:end])
00495         _v18 = _v15.roi
00496         _x = _v18
00497         start = end
00498         end += 17
00499         (_x.x_offset, _x.y_offset, _x.height, _x.width, _x.do_rectify,) = _struct_4IB.unpack(str[start:end])
00500         _v18.do_rectify = bool(_v18.do_rectify)
00501         self.M_cam.append(val1)
00502       return self
00503     except struct.error as e:
00504       raise genpy.DeserializationError(e) #most likely buffer underfill
00505 
00506 
00507   def serialize_numpy(self, buff, numpy):
00508     """
00509     serialize message with numpy array types into buffer
00510     :param buff: buffer, ``StringIO``
00511     :param numpy: numpy python module
00512     """
00513     try:
00514       _x = self
00515       buff.write(_struct_3I.pack(_x.header.seq, _x.header.stamp.secs, _x.header.stamp.nsecs))
00516       _x = self.header.frame_id
00517       length = len(_x)
00518       if python3 or type(_x) == unicode:
00519         _x = _x.encode('utf-8')
00520         length = len(_x)
00521       buff.write(struct.pack('<I%ss'%length, length, _x))
00522       length = len(self.M_cam)
00523       buff.write(_struct_I.pack(length))
00524       for val1 in self.M_cam:
00525         _v19 = val1.header
00526         buff.write(_struct_I.pack(_v19.seq))
00527         _v20 = _v19.stamp
00528         _x = _v20
00529         buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00530         _x = _v19.frame_id
00531         length = len(_x)
00532         if python3 or type(_x) == unicode:
00533           _x = _x.encode('utf-8')
00534           length = len(_x)
00535         buff.write(struct.pack('<I%ss'%length, length, _x))
00536         _x = val1.camera_id
00537         length = len(_x)
00538         if python3 or type(_x) == unicode:
00539           _x = _x.encode('utf-8')
00540           length = len(_x)
00541         buff.write(struct.pack('<I%ss'%length, length, _x))
00542         _v21 = val1.features
00543         _v22 = _v21.header
00544         buff.write(_struct_I.pack(_v22.seq))
00545         _v23 = _v22.stamp
00546         _x = _v23
00547         buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00548         _x = _v22.frame_id
00549         length = len(_x)
00550         if python3 or type(_x) == unicode:
00551           _x = _x.encode('utf-8')
00552           length = len(_x)
00553         buff.write(struct.pack('<I%ss'%length, length, _x))
00554         length = len(_v21.object_points)
00555         buff.write(_struct_I.pack(length))
00556         for val3 in _v21.object_points:
00557           _x = val3
00558           buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00559         length = len(_v21.image_points)
00560         buff.write(_struct_I.pack(length))
00561         for val3 in _v21.image_points:
00562           _x = val3
00563           buff.write(_struct_3d.pack(_x.x, _x.y, _x.z))
00564         buff.write(_struct_B.pack(_v21.success))
00565         _v24 = val1.cam_info
00566         _v25 = _v24.header
00567         buff.write(_struct_I.pack(_v25.seq))
00568         _v26 = _v25.stamp
00569         _x = _v26
00570         buff.write(_struct_2I.pack(_x.secs, _x.nsecs))
00571         _x = _v25.frame_id
00572         length = len(_x)
00573         if python3 or type(_x) == unicode:
00574           _x = _x.encode('utf-8')
00575           length = len(_x)
00576         buff.write(struct.pack('<I%ss'%length, length, _x))
00577         _x = _v24
00578         buff.write(_struct_2I.pack(_x.height, _x.width))
00579         _x = _v24.distortion_model
00580         length = len(_x)
00581         if python3 or type(_x) == unicode:
00582           _x = _x.encode('utf-8')
00583           length = len(_x)
00584         buff.write(struct.pack('<I%ss'%length, length, _x))
00585         length = len(_v24.D)
00586         buff.write(_struct_I.pack(length))
00587         pattern = '<%sd'%length
00588         buff.write(_v24.D.tostring())
00589         buff.write(_v24.K.tostring())
00590         buff.write(_v24.R.tostring())
00591         buff.write(_v24.P.tostring())
00592         _x = _v24
00593         buff.write(_struct_2I.pack(_x.binning_x, _x.binning_y))
00594         _v27 = _v24.roi
00595         _x = _v27
00596         buff.write(_struct_4IB.pack(_x.x_offset, _x.y_offset, _x.height, _x.width, _x.do_rectify))
00597     except struct.error as se: self._check_types(se)
00598     except TypeError as te: self._check_types(te)
00599 
00600   def deserialize_numpy(self, str, numpy):
00601     """
00602     unpack serialized message in str into this message instance using numpy for array types
00603     :param str: byte array of serialized message, ``str``
00604     :param numpy: numpy python module
00605     """
00606     try:
00607       if self.header is None:
00608         self.header = std_msgs.msg.Header()
00609       if self.M_cam is None:
00610         self.M_cam = None
00611       end = 0
00612       _x = self
00613       start = end
00614       end += 12
00615       (_x.header.seq, _x.header.stamp.secs, _x.header.stamp.nsecs,) = _struct_3I.unpack(str[start:end])
00616       start = end
00617       end += 4
00618       (length,) = _struct_I.unpack(str[start:end])
00619       start = end
00620       end += length
00621       if python3:
00622         self.header.frame_id = str[start:end].decode('utf-8')
00623       else:
00624         self.header.frame_id = str[start:end]
00625       start = end
00626       end += 4
00627       (length,) = _struct_I.unpack(str[start:end])
00628       self.M_cam = []
00629       for i in range(0, length):
00630         val1 = camera_pose_calibration.msg.CameraMeasurement()
00631         _v28 = val1.header
00632         start = end
00633         end += 4
00634         (_v28.seq,) = _struct_I.unpack(str[start:end])
00635         _v29 = _v28.stamp
00636         _x = _v29
00637         start = end
00638         end += 8
00639         (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
00640         start = end
00641         end += 4
00642         (length,) = _struct_I.unpack(str[start:end])
00643         start = end
00644         end += length
00645         if python3:
00646           _v28.frame_id = str[start:end].decode('utf-8')
00647         else:
00648           _v28.frame_id = str[start:end]
00649         start = end
00650         end += 4
00651         (length,) = _struct_I.unpack(str[start:end])
00652         start = end
00653         end += length
00654         if python3:
00655           val1.camera_id = str[start:end].decode('utf-8')
00656         else:
00657           val1.camera_id = str[start:end]
00658         _v30 = val1.features
00659         _v31 = _v30.header
00660         start = end
00661         end += 4
00662         (_v31.seq,) = _struct_I.unpack(str[start:end])
00663         _v32 = _v31.stamp
00664         _x = _v32
00665         start = end
00666         end += 8
00667         (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
00668         start = end
00669         end += 4
00670         (length,) = _struct_I.unpack(str[start:end])
00671         start = end
00672         end += length
00673         if python3:
00674           _v31.frame_id = str[start:end].decode('utf-8')
00675         else:
00676           _v31.frame_id = str[start:end]
00677         start = end
00678         end += 4
00679         (length,) = _struct_I.unpack(str[start:end])
00680         _v30.object_points = []
00681         for i in range(0, length):
00682           val3 = geometry_msgs.msg.Point()
00683           _x = val3
00684           start = end
00685           end += 24
00686           (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
00687           _v30.object_points.append(val3)
00688         start = end
00689         end += 4
00690         (length,) = _struct_I.unpack(str[start:end])
00691         _v30.image_points = []
00692         for i in range(0, length):
00693           val3 = geometry_msgs.msg.Point()
00694           _x = val3
00695           start = end
00696           end += 24
00697           (_x.x, _x.y, _x.z,) = _struct_3d.unpack(str[start:end])
00698           _v30.image_points.append(val3)
00699         start = end
00700         end += 1
00701         (_v30.success,) = _struct_B.unpack(str[start:end])
00702         _v33 = val1.cam_info
00703         _v34 = _v33.header
00704         start = end
00705         end += 4
00706         (_v34.seq,) = _struct_I.unpack(str[start:end])
00707         _v35 = _v34.stamp
00708         _x = _v35
00709         start = end
00710         end += 8
00711         (_x.secs, _x.nsecs,) = _struct_2I.unpack(str[start:end])
00712         start = end
00713         end += 4
00714         (length,) = _struct_I.unpack(str[start:end])
00715         start = end
00716         end += length
00717         if python3:
00718           _v34.frame_id = str[start:end].decode('utf-8')
00719         else:
00720           _v34.frame_id = str[start:end]
00721         _x = _v33
00722         start = end
00723         end += 8
00724         (_x.height, _x.width,) = _struct_2I.unpack(str[start:end])
00725         start = end
00726         end += 4
00727         (length,) = _struct_I.unpack(str[start:end])
00728         start = end
00729         end += length
00730         if python3:
00731           _v33.distortion_model = str[start:end].decode('utf-8')
00732         else:
00733           _v33.distortion_model = str[start:end]
00734         start = end
00735         end += 4
00736         (length,) = _struct_I.unpack(str[start:end])
00737         pattern = '<%sd'%length
00738         start = end
00739         end += struct.calcsize(pattern)
00740         _v33.D = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=length)
00741         start = end
00742         end += 72
00743         _v33.K = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=9)
00744         start = end
00745         end += 72
00746         _v33.R = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=9)
00747         start = end
00748         end += 96
00749         _v33.P = numpy.frombuffer(str[start:end], dtype=numpy.float64, count=12)
00750         _x = _v33
00751         start = end
00752         end += 8
00753         (_x.binning_x, _x.binning_y,) = _struct_2I.unpack(str[start:end])
00754         _v36 = _v33.roi
00755         _x = _v36
00756         start = end
00757         end += 17
00758         (_x.x_offset, _x.y_offset, _x.height, _x.width, _x.do_rectify,) = _struct_4IB.unpack(str[start:end])
00759         _v36.do_rectify = bool(_v36.do_rectify)
00760         self.M_cam.append(val1)
00761       return self
00762     except struct.error as e:
00763       raise genpy.DeserializationError(e) #most likely buffer underfill
00764 
00765 _struct_I = genpy.struct_I
00766 _struct_B = struct.Struct("<B")
00767 _struct_12d = struct.Struct("<12d")
00768 _struct_9d = struct.Struct("<9d")
00769 _struct_3I = struct.Struct("<3I")
00770 _struct_2I = struct.Struct("<2I")
00771 _struct_4IB = struct.Struct("<4IB")
00772 _struct_3d = struct.Struct("<3d")
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Properties Friends


camera_pose_calibration
Author(s): Vijay Pradeep, Wim Meeussen
autogenerated on Thu Aug 15 2013 12:02:24