您的位置:首页 > 其它

Halcon学习之仿射变换2

2015-09-14 21:11 399 查看
4.序列化一个均匀2D转换矩阵,将序列化矩阵,以二进制方式写入文件中

//序列化一个均匀2D转换矩阵,将序列化矩阵,以二进制方式写入文件中
HSerializedItem item = hommat2d_scale.SerializeHomMat2d();
HFile file("affine.hobj", "output_binary");
item.FwriteSerializedItem(file);
HHomMat2D temp;
temp.DeserializeHomMat2d(item);//对已经序列化的变换矩阵进行反序列化处理,重新还原成变换矩阵
result_image = image.AffineTransImage(temp, "constant", "true");//进行仿射变换
image.DispColor(w);
w.Click();
w.ClearWindow();
result_image.DispColor(w);
w.Click();


5.对两个仿射变换矩阵执行相乘操作

//对两个仿射变换矩阵执行相乘操作
HHomMat2D multiply = hommat2d.HomMat2dCompose(hommat2d_scale);
result_image = image.AffineTransImage(multiply, "constant", "true");//进行仿射变换
image.DispColor(w);
w.Click();
w.ClearWindow();
result_image.DispColor(w);
w.Click();


6.计算2D转化矩阵的决定因子

//计算2D转化矩阵的决定因子
double determinant = hommat2d_scale.HomMat2dDeterminant();
cout << determinant << endl;

cout << "7.转化一个仿射变换矩阵" << endl;
//转化一个仿射变换矩阵
HHomMat2D invert = hommat2d_scale.HomMat2dInvert();
result_image = image.AffineTransImage(invert, "constant", "true");//进行仿射变换
image.DispColor(w);
w.Click();
w.ClearWindow();
result_image.DispColor(w);
w.Click();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: