只读属性更改为可写?

213年visualizzazioni (ultimi 30 giorni)
使用相机标定得到的视觉工具箱cameraParams出来。这些参数只是阅读。怎么可能做一些改变这些参数或这些limia旁通的好办法
cameraParams = estimateCameraParameters (imagePoints worldPoints)
我为什么要改变它,我想使用一个不同的径向和切向畸变,我发现在C + OpenCV和创建一个无畸变的图像不失真点。
1 Commento
魏勒
魏勒 伊尔2018年3月7日
Modificato:魏勒 伊尔2018年3月7日
cameraParameters =愿景。CameraParameters返回一个对象,其中包含了内在的、外在的,摄像机和镜头畸变参数。cameraParameters = vision.CameraParameters(名称、值)对象属性配置摄像机参数,指定为一个或多个名称值对参数。未指定的属性使用默认值。

每commentare Accedi。

Risposta accettata

迪玛Lisin
迪玛Lisin 他2015年2月16日
嗨•,
您可以创建另一个 cameraParameters 对象使用 构造函数 ,通过所有的参数使用名称-值对。前的例子,假设你有 cameraParams1 ,你想要替换它的径向和切向畸变系数。你可以做以下几点:
cameraParams2 = cameraParameters (“IntrinsicMatrix”,
cameraParams1.IntrinsicMatrix,“RadialDistortion”[0.2,-0.1],
“TangentialDistortion”[0.1,0.1]);
出于好奇,是什么让你认为你们发现畸变系数使用OpenCV更好?
4 Commenti
迪玛Lisin
迪玛Lisin 他2015年2月17日
Modificato:迪玛Lisin 他2015年2月17日
是的,矩阵转置,因为不同的向量矩阵乘法约定使用MATLAB计算机视觉系统工具箱。而且OpenCV的像素坐标是1,相对于那些在MATLAB。在matlab图像的左上的像素的中心(1,1)。在OpenCV (0, 0)。这就是为什么光学中心(情况,v0)将少了一个OpenCV。
我错了的单元畸变系数。事实上,无量纲。请看到我的 回答你的其他问题

每commentare Accedi。

稍risposte (1)

乔尔·大卫·伯克森
找到一个更好的方法!cameraparamets使用“toStruct”函数(这将其转换为一个正常的结构,可以编辑)然后使用cameraParameters函数转换回来:-)

翻译的