DaKenpachi Posted August 27, 2018 Posted August 27, 2018 Hey guys from SRWorks, can you please tell me what kind of distortion model you used? I just don´t get it from the code...In your UE plugin you use this to get some kind of undistortion map from the API itself: ViveSR_GetParameterFloatArray(FSRWorksModule::Get().MODULE_ID_SEETHROUGH, ViveSR::SeeThrough::Param::UNDISTORTION_MAP_L, &UndistortionMap_L);ViveSR_GetParameterFloatArray(FSRWorksModule::Get().MODULE_ID_SEETHROUGH, ViveSR::SeeThrough::Param::UNDISTORTION_MAP_R, &UndistortionMap_R); and later use that map for undistorting the image: float undistortedX = undistortionMap[(int)eye][idx * 4 + 2] - undistortedCx[(int)eye];float undistortedY = undistortionMap[(int)eye][idx * 4 + 3] - undistortedCy[(int)eye]; But what is the content of the map? It does not look like the OpenCV camera calibration model, so I just dont get it =/
liyi_zheng Posted August 28, 2018 Posted August 28, 2018 Are intrinsic and extrinsic parameters what you actually want?
DaKenpachi Posted August 28, 2018 Author Posted August 28, 2018 No, I want to undestand the code... Because this is the current documentation of the api: so you just get a huge array of whatever?...
LS_Tpowell Posted August 28, 2018 Posted August 28, 2018 I 100% agree with you on the lack of documentation part. These are things that desperately need documentation. My only assumption thus far is that this is for getting the camera matrix you would need to apply undistortPoints to the distorted image in order to undistort it. It would be nice if there were documentation to confirm or deny it.
DaKenpachi Posted August 28, 2018 Author Posted August 28, 2018 To my understanding right now, undistortMap is a huge array, where the 5th and 6th "channel" is the LookUpTable for mapping X and Y values. (like here, chapter: Undistortion, 2. using remapping). I mean, from indexing alone, this can never be a camera matrix, if it´s size is at least maxIndex = w * h * 4 + 3 But if it is - why isn´t it just the LUT for mapping? What is the data in the other channels? An why would it be so complecated to use it (I mean, in this form you can´t even use opencv remap function directly)....
DaKenpachi Posted October 18, 2018 Author Posted October 18, 2018 No, I´ve stopped working with SRWorks. My goal was to replace the camera, but use parts of the SRWorks plugin just with the videostream of the other camera. It did not work out well, because the plugin is really confusing and complicated.... Recently I bought a Zed Mini from Stereolabs, which has its own working SDK and UE plugin, attached it to the HMD and it works just fine ;)
LS_Tpowell Posted October 18, 2018 Posted October 18, 2018 wrote: No, I´ve stopped working with SRWorks. My goal was to replace the camera, but use parts of the SRWorks plugin just with the videostream of the other camera. It did not work out well, because the plugin is really confusing and complicated.... Recently I bought a Zed Mini from Stereolabs, which has its own working SDK and UE plugin, attached it to the HMD and it works just fine ;) This actually looks pretty interesting, is there native C++ development support or is it only plugins for the well known game engines. Our product is already feature complete and for the most part done, but I'm not happy with the low resolution and the really low quality depth information, are these things you feel were addressed well by the zed? SDK documentation quality? Sorry, I hope you don't mind me picking your brain on this one.
Recommended Posts
Archived
This topic is now archived and is closed to further replies.