导航

2020年2月27日

摘要: 01.道可道,非常道;名可名,非常名。无名天地之始,有名万物之母。故常无欲,以观其妙;常有欲,以观其徼(jiào)。此两者同出而异名,同谓之玄,玄之又玄,众妙之门。译文 02.天下皆知美之为美,斯恶(è)已;皆知善之为善,斯不善已。故有无相生,难易相成,长短相较,高下相倾,音声相和(hè),前后相随 阅读全文

posted @ 2020-02-27 23:01 dzyBK 阅读(357) 评论(0) 推荐(0)

2020年2月2日

摘要: 前面通过几个篇幅阐述了Ceres的基本应用,本篇基于之前的样例展示一个稍加复杂的样例。在给出使用样例之前,我们先来谈谈捆绑优化(Bundle Adjustment)和单目视觉中的尺度问题。 1.捆绑优化 捆绑优化的概念追溯久远,要从其原始出处说起,还真不是一两话能说清楚,涉及视觉领域相当专业的概念。 阅读全文

posted @ 2020-02-02 23:33 dzyBK 阅读(360) 评论(0) 推荐(0)

摘要: Ceres中的扰动导数主要通过是继承ceres::LocalParameterization来实现。当然,LocalParameterization本身具有更远大的使命或者说具有更广义的功能,扰动导数只是其特定的应用,也是其典型应用。 谈到扰动求导自然避不开李代数的知识,但这不属于本文的范围,可参见 阅读全文

posted @ 2020-02-02 23:02 dzyBK 阅读(597) 评论(0) 推荐(0)

摘要: 之前已经介绍过Ceres自动求导的使用样例,详见《Ceres-Solver学习日志:自动求导使用样例与针孔成像器的应用》,这里介绍手动求导使用样例,并对比与cv::LMSolver的使用差异。 1.定义代价类 手动求导的核心就是继承CostFunction或DynamicCostFunction或S 阅读全文

posted @ 2020-02-02 22:56 dzyBK 阅读(998) 评论(0) 推荐(0)

摘要: 1.定义残差类 基于自动求导的核心是定义残差类。 说到要定义一个类,感觉是要实现很复杂的功能,而实际上该类就实现一个功能,即实现残差模型。 必须在残差类中重截operator()实现残差模型,很多时候,残差类也就这么一个成员,无需再添加其它成员,就能实现残差模型。 如何实现残差类取决于残差模型,反映 阅读全文

posted @ 2020-02-02 22:46 dzyBK 阅读(563) 评论(0) 推荐(0)

摘要: 6.使用样例 提供三个官方使用样例,封装为三个类: (1)AboutPowellEquation:四个残差模型、每个残差模型仅一个残差项、LM算法。 (2)AboutCurveFitting:一个残差模型、此残差模型对应多个残差项、LM算法。 (3)AboutRosenbrock:两个残差模型、每个 阅读全文

posted @ 2020-02-02 22:37 dzyBK 阅读(475) 评论(0) 推荐(0)

2020年2月1日

摘要: 6. 。 5.Rodrigues 李代数中有三种求导方式:基于指数映射求导、基于BCH公式求导、基于扰动方式求导。 三种求导方式的具体理论及其如何应用并不能一两句话讲清楚,具体可参见相关文献。 这里主要是验证基于指数映射求导和基于BCH公式求导的一致性,OpenCV中Rodrigues是基于指数映射 阅读全文

posted @ 2020-02-01 23:20 dzyBK 阅读(302) 评论(0) 推荐(0)

摘要: 1.基础成员 (1)类型成员 int flags:与深度和通道数等相关 int depth():CV_[位数8/16/32/64][类型U/S/F] int type():CV_[位数8/16/32/64][类型U/S/F][前缀C][通道数1/2/3/4/(X)] int channels():通 阅读全文

posted @ 2020-02-01 23:08 dzyBK 阅读(263) 评论(0) 推荐(0)

摘要: 1.Widget:set/getRenderingProperty(key, val)=void fromPlyFile(path)=wgt WidgetAccessor=friend (1)Widget2D:setColor(color)=void 1)WText:txt(str, pos, si 阅读全文

posted @ 2020-02-01 22:59 dzyBK 阅读(1128) 评论(0) 推荐(0)

摘要: 1.主窗体管理 (1)namedWindow(win, flag=1)=void●destroyWindow(win)=void●destroyAllWindows()=void 1)flag=WINDOW_NORMAL:尺寸可任意缩放且可全屏的窗体 2)flag=WINDOW_AUTOSIZE:尺 阅读全文

posted @ 2020-02-01 22:47 dzyBK 阅读(269) 评论(0) 推荐(0)