RuntimeWarning: invalid value encountered in arccos
出错代码位置:
np.arccos(cos_value) * (180 / np.pi)
def get_cross_angle(l1, l2):arr_a = np.array([(l1.p2.x - l1.p1.x), (l1.p2.y - l1.p1.y)]) # 向量aarr_b = np.array([(l2.p2.x - l2.p1.x), (l2.p2.y - l2.p1.y)]) # 向量bcos_value = (float(arr_a.dot(arr_b)) / (np.sqrt(arr_a.dot(arr_a)) * np.sqrt(arr_b.dot(arr_b)))) # 注意转成浮点数运算print(cos_value > 1)print(cos_value)return np.arccos(cos_value) * (180 / np.pi) # 两个向量的夹角的角度, 余弦值:cos_value, np.cos(para), 其中para是弧度,不是角度
出错原因:cos_value值大于1,但是cos_value值只能是[-1, 1]之间。
调试方法:
print(cos_value > 1)
print(cos_value)
输出:True,1.0;原因可能是print会将无限接近1的值,置值1.
修正代码:
def get_cross_angle(l1, l2):arr_a = np.array([(l1.p2.x - l1.p1.x), (l1.p2.y - l1.p1.y)]) # 向量aarr_b = np.array([(l2.p2.x - l2.p1.x), (l2.p2.y - l2.p1.y)]) # 向量bcos_value = (float(arr_a.dot(arr_b)) / (np.sqrt(arr_a.dot(arr_a)) * np.sqrt(arr_b.dot(arr_b)))) # 注意转成浮点数运算eps = 1e-6if 1.0 < cos_value < 1.0 + eps:cos_value = 1.0elif -1.0 - eps < cos_value < -1.0:cos_value = -1.0return np.arccos(cos_value) * (180 / np.pi) # 两个向量的夹角的角度, 余弦值:cos_value, np.cos(para), 其中para是弧度,不是角度
RuntimeWarning: invalid value encountered in arccos相关推荐
- RuntimeWarning: invalid value encountered in true_divide
RuntimeWarning: invalid value encountered in true_divide 这个问题可能是在使用numpy的时候出现了0除以0造成的.比如: import num ...
- 成功解决RuntimeWarning: invalid value encountered in double_scalars
成功解决RuntimeWarning: invalid value encountered in double_scalars 目录 解决问题 解决思路 解决方法 解决问题 print("B ...
- voc_eval.py:41: RuntimeWarning: invalid value encountered in greater_equal if np.sum(rec = t) ==
训练faster-rcnn报错 训练结束后测试时出现类似 File "/home/xxx/py-faster-rcnn/tools/../lib/datasets/voc_eval.py&q ...
- xxx/labelKeypoint/utils/qt.py:81: RuntimeWarning: invalid value encountered in double_scalars
原代码: return np.linalg.norm(np.cross(p2 - p1, p1 - p3)) / np.linalg.norm(p2 - p1) 出现报错: xxx/labelKeyp ...
- Python:RuntimeWarning: invalid value encountered in true_divide解决方案
目录 问题描述 解决方法 问题描述 最近在做NeRF相关的项目,其中用到colmap估计图像位姿,运行python出现"RuntimeWarning: invalid value encou ...
- 【冰糖Python】RuntimeWarning: invalid value encountered in true_divide
使用 numpy 计算时出现 RuntimeWarning: invalid value encountered in true_divide 原因:除法中除数为0 分析:当出现 0 / 0 时,出现 ...
- RuntimeWarning: invalid value encountered in double_scalars
取消警告 RuntimeWarning: invalid value encountered in double_scalars import warnings warnings.filterwarn ...
- invalid value encountered in double_scalars
import numpyd = numpy.array([[1089, 1093]]) e = numpy.array([[1000, 4443]]) answer = numpy.exp(-3 * ...
- 成功解决RuntimeWarning: All-NaN slice encountered vmin = np.nanmin(calc_data)
运行test.py出现下面错误: 解决方法:在 test.py 或 报错路径文件 的代码前加上下面代码 cudnn.benchmark = True 代码释意:通过如上设置让内置的cuDNN的aut ...
- 使用python的butter带通滤波器时出现RuntimeWarning
RuntimeWarning: invalid value encountered in reduce ret = umr_sum(arr, axis, dtype, out, keepdims) ...
最新文章
- android make 没反应
- 【收藏】Chrome 错误代码:ERR_UNSAFE_PORT
- C++ 顺序容器入门
- React 解决鼠标移入子元素触发父元素的mouseout事件
- c语言pta判断字符或数字的昵称,c/c++开发分享『ACM C++』PTA浙大 | 基础题 – 打印沙漏...
- 规律、逻辑规律与悖论
- Java魔法堂:解读基于Type Erasure的泛型
- 微信公众号支付失败的各种原因
- 基于rietveld 搭建 codereview平台 选型和部署篇(一)
- MUI-grid(栅格),超小屏xs和小屏幕sm
- ps 给渐变的背景色换一个颜色
- arcgis 出图背景_ArcGIS入门教程来袭,零基础的同学快看过来!
- css局域样式使用scoped,防止样式污染
- Unity 调用系统自带的虚拟键盘
- 普通socket服务端
- 无法访问指定计算机,电脑打开磁盘/程序/文件时提示Windows无法访问指定设备、路径或文件怎么办...
- brew update巨慢怎么办
- mysql5.7递归_Mysql5.7自定义函数递归报错1424 Recursive stored functions and triggers are not allowed...
- DevE控件chartControl 基本用法
- 关于数组的对象获取及排序问题/小程序的多层页面返回问题
热门文章
- 手机问卷调查报告 html,关于手机的问卷调查调研报告.doc
- 2-10配置Linux网络
- index.highlight.max_analyzed_offset 偏移量设置
- NCIS调查表辅助工具-病案首页数据上传-病案数据统计
- java茌首字母_获取输入字符的首字母(中文为拼音首字母)
- ArcGIS影像多种裁剪方法
- iMazing v2021绿色便携版iOS设备数据管理工具
- —— GPS测量原理及应用复习-7 ——
- 什么是非接触式IC卡
- 你弄懂了Spark的Shuffle实现方式吗?手把手带你解析Spark的Sort Shuffle和Tungsten-Sort Shuffle