记录使用Depix过程(小白文)

记录使用Depix过程(小白文)Tips:本文仅用做探索记录(外行+新手),不保证正确性,慎读慎参考!背景:无聊看到一个可以去除马赛克的工具,并有GitHub源码(短短几天10K+star,lsp警告????,我反正不是,没跑过Python代码,一次尝试而已)。过程为本人第一视角,漏掉的部分请自行探索。下载源码,cd到根目录,执行文档(README.d)中的Example代码。到这里,目前还不明白这行代码的意思,不过可以看到两个图片路径,都在示例代码中出现,最后一个看名字就知道,工程根目录输出一个output.png图片。猜测为执

大家好,又见面了,我是你们的朋友全栈君。

Tips:本文仅用做探索记录(外行+新手),不保证正确性,慎读慎参考!

背景:无聊看到一个可以去除马赛克的工具,并有GitHub源码(短短几天10K+star,lsp警告?,我反正不是,没跑过Python代码,一次尝试而已)。

过程为本人第一视角,漏掉的部分请自行探索。

  1. 下载源码,cd到根目录,执行文档(README.d)中的Example代码。到这里,目前还不明白这行代码的意思,不过可以看到两个图片路径,都在示例代码中出现,最后一个看名字就知道,工程根目录输出一个output.png图片。猜测为执行depix.py脚本,后面为‘参数’和输出结果。(这里默认已安装python工具,可以执行python命令)
python depix.py -p images/testimages/testimage3_pixels.png -s images/searchimages/debruinseq_notepad_Windows10_closeAndSpaced.png -o output.png

执行代码后报错

Traceback (most recent call last):
File “depix.py”, line 1, in
from depixlib.LoadedImage import *
File “/Users/bit_tea/Downloads/Depix-main/depixlib/LoadedImage.py”, line 1, in
from PIL import Image
ImportError: No module named PIL

百度。。。,结果意思是需要安装pillow命令。

  1. 安装pillow
pip install pillow

报错,没安装pip…

  1. 安装pip
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python get-pip.py

提示:

WARNING: The scripts pip, pip2 and pip2.7 are installed in ‘/Users/bit_tea/Library/Python/2.7/bin’ which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use –no-warn-script-location.

此问题需解决。。

python3 get-pip.py
Successfully installed pip-20.3.1
WARNING: You are using pip version 19.2.3; however, version 20.3.1 is available.
You should consider upgrading via the '/Applications/Xcode.app/Contents/Developer/usr/bin/python3 -m pip install --upgrade pip' command.

执行提示命令

/Applications/Xcode.app/Contents/Developer/usr/bin/python3 -m pip install --upgrade pip

至此,pip3安装成功。

  1. 回头执行第2步,安装pillow(注意:用pip3)
pip3 install pillow
  1. 回头执行第1步(注意:用python3)
python3 depix.py -p images/testimages/testimage3_pixels.png -s images/searchimages/debruinseq_notepad_Windows10_closeAndSpaced.png -o output.png

稍作等待,最后一句完成,可以看到工程目录下多了一个output.png文件,大功告成~

INFO:root:Finding color rectangles from pixelated space
INFO:root:Found 116 same color rectangles
INFO:root:86 rectangles left after moot filter
INFO:root:Found 1 different rectangle sizes
INFO:root:Finding matches in search image
INFO:root:Removing blocks with no matches
INFO:root:Splitting single matches and multiple matches
INFO:root:[10 straight matches | 76 multiple matches]
INFO:root:Trying geometrical matches on single-match squares
INFO:root:[15 straight matches | 71 multiple matches]
INFO:root:Trying another pass on geometrical matches
INFO:root:[17 straight matches | 69 multiple matches]
INFO:root:Writing single match results to output
INFO:root:Writing average results for multiple matches to output
INFO:root:Saving output image to: output.png

结语:通过观察输入和输入,发现输入除了一个马赛克图片外,还需要一张对比(或者是预测结果参数)的图片,有很大的局限性(lsp哭了),之后再看看是不是除了示例还有其他功能。。。

细心的同学应该发现第3步还有一个问题没有解决。。。虽然pip3可以用,pip还是不行。

pip
-bash: pip: command not found

原因:(第3步有提示)pip没有添加到path环境里,所以在非其安装路径下是不可以执行pip相关命令。

WARNING: The scripts pip, pip2 and pip2.7 are installed in ‘/Users/bit_tea/Library/Python/2.7/bin’ which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use –no-warn-script-location.

解决:(PATH路径为以上第3步提示的路径,及默认安装到python2.7中的pip路径)。

echo 'export PATH=/Users/bit_tea/Library/Python/2.7/bin:$PATH' >>~/.bashrc    
source ~/.bashrc 

验证

pip

Usage:   
  pip <command> [options]

完成~

参考文章:
https://blog.csdn.net/weixin_44037416/article/details/96842058
https://www.jianshu.com/p/96bfccc7c680

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/148072.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • python和java和c语言的区别-python c 和java的区别有哪些「建议收藏」

    python和java和c语言的区别-python c 和java的区别有哪些「建议收藏」一、pythonpython比较容易学习,语法很简单,融入了很多现代编程语言的特性。python的库非常丰富,可以迅速地开发程序,无论是网站还是小游戏都非常方便。不过,python的脚本的运行效率较低,不适合对运行效率要求较高的程序。Python是一种脚本语言。它更适合用来做算法。Python简单易学,对于新手来讲是编程入门的好选择。Python其实也是基于C++创造的,它们的区别主要体现在,C+…

    2022年7月7日
    28
  • C语言之学生管理系统代码(完整)「建议收藏」

    C语言之学生管理系统代码(完整)「建议收藏」<spanstyle=”font-size:18px;”>#include<stdio.h>#include<stdlib.h>#defineFILENAME”student.dat”typedefenum{MAN,WOMAN}SEX;typedefstructtagStudent{ intnum; //学生…

    2022年7月26日
    4
  • C#UDP编程

    C#UDP编程一.UDP协议UDP(UserDatagramProtocol)协议就是“用户数据报协议”,它是一种无连接的协议,无连接主要是和TCP协议相比较的。我们知道当利用TCP协议传送数据的时候,首先必须建立连接(也就是所谓的握手)才可以传输数据。而当计算机利用UDP协议进行数据传输的时候,发送方只需要知道对方的IP地址和端口号就可以发送数据,而并不需要进行连接。由于UDP协议并不需要进行确定

    2022年9月8日
    2
  • 单片机控制步进电机程序c语言正反转停止,单片机控制步进电机正反转程序

    单片机控制步进电机程序c语言正反转停止,单片机控制步进电机正反转程序该楼层疑似违规已被系统折叠隐藏此楼查看此楼#include”reg52.h”#defineuintunsignedint#defineucharunsignedcharsbitk1=P3^4;sbitk2=P3^5;sbitk3=P3^6;voiddelay(uintxms){uinti,j;for(i=xms;i>0;i–)for(j=110;j>0;j-…

    2022年5月31日
    54
  • 图论——握手定理_离散数学 树 握手定理

    图论——握手定理_离散数学 树 握手定理这是一个非常重要的图论定理在多出用到:握手定理:在任何有向图图中,所有顶点的度数之和等于边数的2倍,所有顶点的入度之和等于所有顶点出度之和,等于边数无向简单图,同样所有顶点的度数之和等于边数的2

    2022年8月5日
    5
  • Java8中 Date和LocalDate的相互转换[通俗易懂]

    Java8中 Date和LocalDate的相互转换[通俗易懂]一.简述Date对象表示特定的日期和时间,而LocalDate(Java8)对象只包含没有任何时间信息的日期。因此,如果我们只关心日期而不是时间信息,则可以在Date和LocalDate之间进行转换。二.Date转LocalDate如果要将java.util.Date转换为java.time.LocalDate,可以使用以下步骤:1)将java.util.Date转换为ZonedDateTime

    2022年10月3日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号