paddleocr,windows pip 安装巨坑 lanms 库

news2024/9/23 3:30:52

安装 lanms 最佳参考: paddleocr,windows pip 安装巨坑 lanms 库

防丢失,直接抄录的一份


paddleocr最后几个库一个比一个难装,特别是 lanms 库,巨难装,拒绝任何花里胡哨,十分钟,三步内解决问题。

pip 下载报错

Keyring is skipped due to an exception: 'keyring.backends'
Collecting lanms
  Using cached lanms-1.0.2.tar.gz (973 kB)
    ERROR: Command errored out with exit status 1:
     command: 'C:\Users\TensorFlow\anaconda3\python.exe' -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\TENSOR~1\\AppData\\Local\\Temp\\pip-install-46p1kew5\\lanms\\setup.py'"'"'; __file__='"'"'C:\\Users\\TENSOR~1\\AppData\\Local\\Temp\\pip-install-46p1kew5\\lanms\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base 'C:\Users\TENSOR~1\AppData\Local\Temp\pip-install-46p1kew5\lanms\pip-egg-info'
         cwd: C:\Users\TENSOR~1\AppData\Local\Temp\pip-install-46p1kew5\lanms\
    Complete output (11 lines):
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "C:\Users\TENSOR~1\AppData\Local\Temp\pip-install-46p1kew5\lanms\setup.py", line 27, in <module>
        if subprocess.call(['make', '--always-make','-C', BASE_DIR]) != 0:
      File "C:\Users\TensorFlow\anaconda3\lib\subprocess.py", line 339, in call
        with Popen(*popenargs, **kwargs) as p:
      File "C:\Users\TensorFlow\anaconda3\lib\subprocess.py", line 800, in __init__
        restore_signals, start_new_session)
      File "C:\Users\TensorFlow\anaconda3\lib\subprocess.py", line 1207, in _execute_child
        startupinfo)
    FileNotFoundError: [WinError 2] 系统找不到指定的文件。
    ----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.

是以上这样或者是,下载好了一部分后面直接报错(无法复原了)。

第一步 上 github 下载 C 语言版本自行编译

https://github.com/SakuraRiven/LANMS

上面是网址。

 内容是这个样子,下载后安装他说的使用 python setup.py bdist_wheel 进行编译。

注意:报错

(venv3) D:\study\配料表分析\lanms-master>python setup.py bdist_wheel
Traceback (most recent call last):
  File "setup.py", line 27, in <module>
    if subprocess.call(['make', '--always-make','-C', BASE_DIR]) != 0:
  File "C:\Users\TensorFlow\anaconda3\lib\subprocess.py", line 339, in call
    with Popen(*popenargs, **kwargs) as p:
  File "C:\Users\TensorFlow\anaconda3\lib\subprocess.py", line 800, in __init__
    restore_signals, start_new_session)
  File "C:\Users\TensorFlow\anaconda3\lib\subprocess.py", line 1207, in _execute_child
    startupinfo)
FileNotFoundError: [WinError 2] 系统找不到指定的文件。
if subprocess.call(['make', '--always-make','-C', BASE_DIR]) != 0:
   raise RuntimeError('Cannot compile lanms in the directory: {}'.format(BASE_DIR))

我也不晓得这是缺了个什么文件,只是个判断而已注释这两行代码就好了。

第二步 pip 安装 whl 文件

运行完毕后,在dist文件夹下就能找到 whl 格式的库文件,放到环境下安装即可。

pip install lanms-1.0.2-cp37-cp37m-win_amd64.whl

到这里就算是安装完毕了,如果报错看看是不是第三步的样子。

第三步 修改库源代码

安装后运行可能还会报错,但是已经和之前不一样了,报错:

Traceback (most recent call last):
  File "D:/study/配料表分析/PaddleOCR-release-2.6/test.py", line 1, in <module>
    from paddleocr import PaddleOCR
  File "D:\study\配料表分析\PaddleOCR-release-2.6\paddleocr.py", line 34, in <module>
    from tools.infer import predict_system
  File "D:\study\配料表分析\PaddleOCR-release-2.6\tools\infer\predict_system.py", line 33, in <module>
    import tools.infer.predict_det as predict_det
  File "D:\study\配料表分析\PaddleOCR-release-2.6\tools\infer\predict_det.py", line 31, in <module>
    from ppocr.data import create_operators, transform
  File "D:\study\配料表分析\PaddleOCR-release-2.6\ppocr\data\__init__.py", line 35, in <module>
    from ppocr.data.imaug import transform, create_operators
  File "D:\study\配料表分析\PaddleOCR-release-2.6\ppocr\data\imaug\__init__.py", line 48, in <module>
    from .drrg_targets import DRRGTargets
  File "D:\study\配料表分析\PaddleOCR-release-2.6\ppocr\data\imaug\drrg_targets.py", line 21, in <module>
    from lanms import merge_quadrangle_n9 as la_nms
  File "C:\Users\TensorFlow\anaconda3\envs\AI\lib\site-packages\lanms\__init__.py", line 2, in <module>
    from .adaptor import merge_quadrangle_n9 as nms_impl
ModuleNotFoundError: No module named 'lanms.adaptor'

定位到报错的源码,读源码可以看到其实这里是个递归,不知道什么原因函数的调用出了些问题。
此处改动源码请保存好原来的源码
直接替换掉 __init __.py 文件下的代码。

import numpy as np


def merge_quadrangle_n9(polys, thres=0.3, precision=10000):
    if len(polys) == 0:
        return np.array([], dtype='float32')
    p = polys.copy()
    p[:, :8] *= precision
    ret = np.array(merge_quadrangle_n9(p, thres), dtype='float32')
    ret[:, :8] /= precision
    return ret


后面两项直接安装: 

# 安装时注意关闭魔法
pip install lmdb
pip install tqdm

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/431429.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

HTML5 <menu> 标签

HTML5 <menu> 标签 实例 HTML5 <menu>标签用于定义菜单列表。 两个菜单按钮系列选项实例&#xff08;"File" 和 "Edit"&#xff09;&#xff1a; <menu type"toolbar"> <li> <menu label"File"> &…

Linux-初学者系列——篇幅4_系统运行相关命令

系统运行相关命令-目录一、关机重启注销命令1、重启或者关机命令-shutdown语法格式&#xff1a;常用参数&#xff1a;01 指定多久关闭/重启系统02 指定时间关闭/重启系统03 实现立即关闭/重启系统04 取消关闭/重启系统计划2、重启或者关机命令-halt/poweroff/reboot/systemctl语…

Lucene Solr Elasticsearch三者之间的关系,怎么选?

Lucene简介&#xff1a; Lucene主要用于构建文本搜索应用程序&#xff0c;包括Web搜索引擎、桌面搜索工具和商业应用程序。它提供了诸如单词分析、查询解析、搜索结果排序等功能&#xff0c;可以轻松地在大量文档中快速搜索和查找相关信息。 Lucene具有以下特点&#xff1a; …

Linux -- 进阶 Web 服务器 基础前瞻 ( 一 )

目录 WWW 简介 &#xff1a; 组件一个网站得需要哪些东西呢 &#xff1f;&#xff1f; 1 得有 响应用户申请网页服务 的软件 2 服务器主机 3 那就需要数据了 4. 浏览器 预备知识 &#xff1a; 网址及HTTP 简介 &#xff1a; URL : http 请求方法 &#xff1a;…

关于使用云渲染的五大优势

在不影响质量或性能的情况下节省时间、金钱和资源&#xff0c;对于需要在通常较短且严格的期限内创建高质量 3D 内容的专业人士来说&#xff0c;云渲染都是最好的选择&#xff01;云渲染作为数字媒体生产的最新趋势&#xff0c;与传统的渲染农场和机器相比具有许多优势&#xf…

每个程序员都应该知道的 5 个基本 Matlab 提示和技巧

当今软件开发和数据分析领域中&#xff0c;Matlab 是一种十分常用的工具。然而&#xff0c;对于许多程序员而言&#xff0c;它的高级特性可能并不为人所知。在本文中&#xff0c;我们将分享每个程序员都应该知道的 5 个基本 Matlab 提示和技巧&#xff0c;以帮助你更好地使用这…

【红队APT】反朔源流量加密CSMSF证书指纹C2项目CDN域前置

文章目录背景交代&#xff1a;常见红蓝对抗中红队面临问题&#xff1a;蓝队发现处置情况&#xff1a;NC-未加密&加密后-流量抓包对比MSF-流量通讯特征修改-证书-openssl解决HTTPS-SSL通讯证书被特征标示问题impersonate_ssl模块CS-流量通讯特征修改-证书指纹-keytool1.修改…

【C++】哈希的应用——bitset(STL)位图

哈希的应用——bitset(STL)位图 文章目录 哈希的应用——bitset(STL)位图一、bitset的介绍1.位图的引入2.位图的概念3.位图的应用 二、bitset的使用1.bitset的构造方式2.bitset成员函数的使用3.bitset运算符的使用 三、bitset位图的模拟实现1.位图的基本框架2.成员函数2.1.构造…

【Linux】进程学习(1)---理解进程概念

文章目录 冯诺依曼体系结构理解冯诺依曼体系结构 操作系统概念与定位概念计算机管理模型计算机的软硬件体系结构图系统调用和库函数概念 进程基本概念描述进程--PCBtask_struct内容分类组织进程 冯诺依曼体系结构 数学家冯诺依曼提出了计算机制造的三个基本原则&#xff0c;即采…

gnome换回纵向切换工作区

效果&#xff1a; 思路 最新的debian / ubuntu中用的gnome 4.x&#xff0c;工作区切换变成了左右切换&#xff0c;习惯了上下&#xff0c;真的很不舒服。 而且优化选项里也把设置开关取消掉了&#xff0c;解决方案是使用Vertical overview这个扩展&#xff1a; ## 安装扩展管…

5.1 大数定律

我的理解&#xff1a; 大数定律的基本思想是&#xff1a;当我们有足够的样本数量时&#xff0c;样本的平均值可以相对准确地估计总体的平均值。这是因为随着样本数量的增加&#xff0c;样本平均值的波动会逐渐减小&#xff0c;从而趋向于总体平均值。 我们可以通过一个简单的…

rk3568-rk809电池电量计

简介&#xff1a; RK809 集成在RK3568上的一个高性能的 PMIC&#xff08;(Power Management IC):电源管理集成电路&#xff09;&#xff0c;PMIC全称Power management integrated circuit&#xff0c;一般情况下是一颗独立于主控的芯片&#xff0c;集成了电源控制&#xff0c;电…

Docker源码阅读总结

Docker总架构图 客户端-服务器架构以及请求的发送&#xff0c;解析等原理不再赘述&#xff0c;这不是我们学习docker的重点。我们知道&#xff0c;Docker提供给了我们一个在隔离环境中运行的进程&#xff0c;那么我其实想深入探究的是 容器的网络是怎么在这个隔离的环境中与其…

【花雕学AI】如何避免ChatGPT封号,安全稳定地使用ChatGPT的技巧和简单过渡办法

虽然ChatGPT 目前已经不是测试期了&#xff0c;它在 2021 年 11 月正式推出&#xff0c;并且在 2021 年和 2022 年后进行了多次更新&#xff0c;提升了真实性和数学能力等方面。但是&#xff0c;ChatGPT 的运算压力仍然很大&#xff0c;因为它需要处理海量的数据和请求&#xf…

ASUS ZenBook Duo 14 UX481电脑 Hackintosh 黑苹果efi引导文件

原文来源于黑果魏叔官网&#xff0c;转载需注明出处。&#xff08;下载请直接百度黑果魏叔&#xff09; 硬件型号驱动情况 主板ASUS ZenBook Duo 14 UX481 处理器• Intel Core i7-10510U • Intel Core i5-10210U 已驱动 内存Internal 4GB 2666 Changeable 8GB 2666 mem…

【WCH】CH32F203基于硬件I2C + SSD1306 OLED跑图形库

【WCH】CH32F203基于硬件I2C SSD1306 OLED跑图形库 &#x1f388;基于STM32图形库开源项目地址&#xff1a;https://github.com/hello-myj/stm32_oled&#x1f4cc;相关篇《【WCH】CH32F203硬件I2C驱动SSD1306 OLED》&#x1f4cd;《【WCH】CH32F203软件I2C驱动SSD1306 OLED》…

CountDownLatch背后的原理

前言&#xff1a; 在日常工作中常用到多线程&#xff0c;如果使用多线程处理那么就要考虑同步问题&#xff0c;一般我们会考虑使用加锁来解决。但是还有一些场景&#xff0c;如下&#xff1a; 场景&#xff1a;小升初考试&#xff0c;考生做题&#xff0c;监考老师要等待所有考…

论文阅读【2】-SepViT: Separable Vision Transformer论文结构漫谈与Python实现测试

可分离卷积ViT实现轻量级transformer结构1. 论文主要工作1.1 摘要内容1.2 写作动机&#xff08;Motivations&#xff09;1.2.1 Transformer Patch结构的巨大计算量问题1.2.2 Swin&#xff1a;针对计算量的优化1.2.3 Twins&#xff1a;针对边缘端部署优化1.2.4 Cswin&#xff1a…

【c#串口通信(2)】串口相关参数介绍

1、端口号&#xff08;Port&#xff09; 我们使用一个串口的时候&#xff0c;首先是要打开这个串口&#xff0c;那么我们怎么知道电脑上现在支持几个串口呢&#xff1f;对应的端口号又是什么呢&#xff1f; 由于我的电脑系统是window11&#xff0c;下面就以window11为例介绍如…

部分国产水文水动力模型介绍

一、HydroMPM模型 1、模型介绍 2016年度自立项目HydroMPM系统开发与集成完成的洪水分析模拟软件等成果经权威专家鉴定整体达到国际领先水平&#xff0c;HydroMPM_FloodRisk入选国家防总《全国重点地区洪水风险图编制项目可选软件名录》。成果应用项目100余项&#xff0c;累计…