【开发日记】计算精度
一个异常,用了两天的时间查出原因,原来就是一个开根号运算造成的!其根源是计算底数的时候出现了负数!然后底数的计算是通过图像平方和积分图的a+d-b-c得到的,这一步的结果理所当然的应该是非负的!但结果就出现了负数!最终原因是double的精度问题,某些像素点位置的积分图a+d-b-c值竟然有e-6的误差,然后整个平方和积分图的数量级大概是e+10,刚好是double的有效数字精度16位!这说明a+d和b-c的值非常相近(相差小于double的精度了),导致相减时出现误差了!该死的平方和积分图,数量级太TM大了!
开根号的底数必须确保大于0!!!不仅开根号,除数不能为0、exp和log底数不能为0这些都会出现NaN或者Inf值,必须对运算值加上零阈值!
重要的事情说三遍:
可能出现无意义运算的地方必须千万注意!
可能出现无意义运算的地方必须千万注意!
可能出现无意义运算的地方必须千万注意!
【开发日记】计算精度相关推荐
- 0.1+0.2不等于0.3,微信小程序云开发如何解决JavaScript小数计算精度失准的问题
先看图,0.1+0.2不等于0.3 这个是JavaScript语言自身存在的一个问题.说到这里不得不提一下网上流传的JavaScript搞笑图 我们在使用云开发来开发微信小程序的时候,会经常遇到Jav ...
- oracle最小精度,【整理+原创】Oracle的计算精度与误差
也不算总结帖,至多算个小结帖 由近期看到的帖子想到的,本主题只讨论数字 1.Oracle的计算精度是多少? Oracle的数字精度最多是38位,计算精度当然也就这么多了,否则如何表示计算结果?呵呵 O ...
- 华为云云原生首次在太空验证,提升“天算星座“卫星计算精度
12月10日,搭载"天算星座"计算平台的试验卫星在轨稳定运行,华为云"云边一体"方案首次在太空验证. 图:天算星座计划 "天算星座"计划,由 ...
- Linux 小程序开发日记(终章)(pyqt+yolov5)
Linux 小程序开发日记(终章) 哈喽大家好,我是爱喝欢乐水的柳橙汁,这一篇,是最后一篇啦.我会将所有个过程都梳理一遍. 关于代码的详细注释,大家就参考一下之前的笔记吧.这一篇博客我就放上我精简的代 ...
- 开发日记2021-17、20周
2021-4-19 温习了下观察者模式,学习了状态模式. 但是感觉状态模式不是太能把握透彻,代码结构不太一样,理解起来有些偏差. 写着写着就陷入到了沉思中,总会忘记要把想法记下来. 这里就是草稿就是思 ...
- 鸿蒙版瑞幸咖啡开发日记(三)购物车结算栏开发
鸿蒙版瑞幸咖啡开发日记之已点咖啡结算栏开发 1.整体设计思路 2.购物车结算栏布局设计 2.1 右侧购物车图标 2.2 购物车结算栏 2.3 已点咖啡数量圆圈 2.4 已点咖啡模板 这里我实现的效果其 ...
- JavaScript 格式化数字、金额、千分位、保留几位小数、舍入舍去… 及其浮点数计算精度问题(推荐的类库 Numeral.js 和 accounting.js)...
前端开发中经常会碰到用 JavaScript 格式化数字,最最常见的是格式化金额,一般格式化金额需要千分位分隔,保留2位小数等等. 还有偶然会遇到的使用 js 计算浮点数时出现误差. 完善的功能函数推 ...
- [Unity]《太空射击》开发日记Ep.2(初级篇)
文章目录 前言 敌人1脚本 预制件 敌人1的完善工作 触发器式碰撞 屏幕边缘检测 计算敌人1的飞行角度 优化敌人生成器 前言 [Unity]<太空射击>开发日记Ep.1(入门篇) 在上一篇 ...
- 【开发日记】石头剪刀布之神经网络训练
收集好数据之后,就可以进行训练了.这里可以参考我之前写的一篇博客,利用预训练模型进行迁移训练,详见[开发日记]马桶识别之马桶分类,通过迁移学习进行马桶分类 通过上述博客组织好数据结构,然后调用以下代码 ...
- double和float计算精度不准的问题
2019独角兽企业重金招聘Python工程师标准>>> 1.首先我们要知道float和double型,的底层实现是二进制的.十进制中的一个有限位数小数,转换成二进制就不一定是有限位数 ...
最新文章
- Java™ 教程(Collection接口)
- OEM、ODM、OBM简介 (说一个软件是O出来的 O的含义)
- c#获取父类_C#——父类中的this的指向,及用反射获取当前类所在的Type | 学步园...
- jQuery控制表格垂直滚动条
- 【java】将PDF转成字符串
- 深度剖析「圈组」消息系统设计 | 「圈组」技术系列文章
- VTK:可视化之KochSnowflake
- jQuery学习笔记(一)——基础选择器、过滤选择器、表单选择器
- 如何云服务器销售,如何云服务器销售
- Effective Java~58. for-each 循环优先于传统的for 循环
- 强烈推荐:大神总结的超系统的前端提升路径
- ahjesus Axure RP 7.0注册码
- php5.2、5.3和5.4,Apache多虚拟主机多版本PHP(5.2+5.3+5.4)共存运行配置
- ubuntu16.04下ROS操作系统学习笔记(九)Moveit
- 获取棋盘格与标准模板在扫描仪上不同位置图片
- 拖机教程之ASTER v7超越BETWIN WIN7 VISTA教程(含ASTER v7和注册机下载)
- matlab中zeros和ones函数使用方法
- 《古墓丽影10》PC版重磅更新:DX12画质惊艳!
- 基于VUE的SVG动画处理(一)
- C++封装zlib库