文章目录

  • 问题描述:
  • 原因分析:
  • 解决方案:
    • 方案1(不推荐):
    • 方案2(推荐):
  • 解决步骤:
  • 可能遇到的报错

问题描述:

skimage 报错

from skimage import io

报错信息如下:

cannot import name '_validate_lengths' from 'numpy.lib.arraypad'

原因分析:

numpy的版本问题,导致_validate_lengths()函数被删除。

解决方案:

方案1(不推荐):

numpy降级。

降到一个保留有_validate_lengths()函数的版本。具体哪个版本并不清楚。

方案2(推荐):

其实skimage中给出了解决方案。

在skimage中保留了缺少的_validate_lengths函数,将其复制到numpy的对应位置即可!

方案2的好处:对任意numpy版本均可用,而不用把numpy限制在一个低版本。

解决步骤:

仅进行方案2。

  1. 找到arraycrop.py文件。

    文件位置(Linux):

    /home/hgx/lib/python3.7/site-packages/skimage/util/arraycrop.py
    
  2. 复制其中被注释掉的函数

    • _normalize_shape()
    • _validate_lengths()。这就是numpy缺少的函数!
  3. 打开arraypad.py文件

    文件位置(Linux):

    /home/hgx/lib/python3.7/site-packages/numpy/lib/arraypad.py
    
  4. 在最后加入在arraycrop.py复制的两个函数,并取消注释,保存。

  5. 重启

可能遇到的报错

IndentationError: unindent does not match any outer indentation level

解决方式见:[bug解决] IndentationError unindent does not match any outer indentation level


参考:完美解决cannot import name ‘_validate_lengths’ from 'numpy.lib.arraypad’错误

[bug解决] cannot import name ‘_validate_lengths‘ from ‘numpy.lib.arraypad‘相关推荐

  1. ImportError: cannot import name ‘_validate_lengths‘ from ‘numpy.lib.arraypad‘完美解决方法

    报错原因 numpy版本与skimage版本不匹配 解决方法 打开Anaconda3的arraycrop.py,该文件我是在这里的C:\ProgramData\Anaconda3\Lib\site-p ...

  2. scikit-image安装 from numpy.lib.arraypad import _validate_lengths ImportError: cannot import name ‘_va

    [写在前面]提示没有skimage.io 安装界面如下 [报错] from numpy.lib.arraypad import _validate_lengths ImportError: canno ...

  3. 解决“ImportError: cannot import name ‘_validate_lengths‘”问题

    问题描述 在运行程序的时候报错: Traceback (most recent call last):File "demo_heat_map.py", line 2, in < ...

  4. 运行tensorflow程序,出现ImportError: cannot import name '_validate_lengths'错误的解决办法

    运行tensorflow程序,出现ImportError: cannot import name '_validate_lengths'错误的解决办法 如下图: 原因 问题原因:这是skimage版本 ...

  5. vscode 格式化某一段代码_VSCode格式化代码功能失效的bug解决方法

    VSCode格式化代码功能失效的bug解决方法 前不久我装上了 黑苹果,那么为了快速转移开发环境,我使用了VSCode(Visual Studio Code下面简称VSCode)的插件 Setting ...

  6. iphone XCode调试技巧之EXC_BAD_ACCESS中BUG解决

    http://mobile.51cto.com/iphone-279455.htm XCode调试技巧之EXC_BAD_ACCESS中BUG解决是本文要介绍的内容,在iphone开发的时候EXC_BA ...

  7. 在TFS中通过程序动态创建Bug并感知Bug解决状态

    为便于跟踪问题解决情况,预警引擎产生的比较严重的预警日志,需要在TFS中登记Bug,通过TFS的状态流转,利用TFS Bug的Web挂钩功能,动态感知Bug解决状态,从而跟踪预警问题的解决状态, 整体 ...

  8. WPF .NET 4.0 OpenClipboard 失败 (异常来自 HRESULT:0x800401D0 (CLIPBRD_E_CANT_OPEN)) BUG解决

    WPF .NET 4.0 OpenClipboard 失败 (异常来自 HRESULT:0x800401D0 (CLIPBRD_E_CANT_OPEN)) BUG解决 参考文章: (1)WPF .NE ...

  9. 解决protobuf import路径的问题

    解决protobuf import路径的问题 参考文章: (1)解决protobuf import路径的问题 (2)https://www.cnblogs.com/hsnblog/p/9615742. ...

最新文章

  1. DNS报文格式(RFC1035)
  2. JSP基础(4)-JavaBean
  3. 简化软件产品的实际步骤
  4. mysql 分页算法_MySQL高效的分页算法
  5. python decorator. decorator_Python中decorator使用实例
  6. AMD宣布350亿美元收购赛灵思,CPU、GPU、FPGA全凑齐
  7. 黄聪:JQUERY的datatables插件,Date range filter时间段筛选功能
  8. 推荐给java新手的JAVA零基础入门书籍
  9. 新概念模拟电路_第一册_晶体管_读书笔记
  10. 电力系统分析设计matlab,电力系统分析课程设计-基于Matlab的电力系统潮流计算...
  11. 数据降维(四)ISOMAP
  12. 带你了解ae2021版新功能 ae 2021中文直装版
  13. UNIAPP手写签名
  14. WSA(win11子系统)安卓应用抢先体验
  15. Tungsten Replicator学习总结
  16. FOne MOOC在线课程平台
  17. 设置Excel表打印时的表头和页码
  18. Git学习--分支(branch、merge、rebase)
  19. Linux ss命令使用
  20. 【33】深入理解对象与垃圾回收机制

热门文章

  1. python基本代码教程-Python基础
  2. python学习手册-Python 重点知识整理(基于Python学习手册第四版)
  3. python必备入门代码-python基础入门这一篇就够
  4. 传统语音识别(GMM+HMM)
  5. 【手机开发岗位职责|手机开发是做什么的】-看准网
  6. 科技范足 多家上市川企获省科技进步奖
  7. java停机保存数据_哦,这就是java的优雅停机?(实现及原理)
  8. 告知书页面html样式,纯CSS实现的三种通知栏滚动效果
  9. vue实现树形结构增删改查
  10. 【MYSQL快速入门】常用函数:文本函数