pycharm显示远程图片的实现

yipeiwu_com5年前Python基础

首先,你要知道pycharm可以通过ssh链接到远程服务器,并且也能够用pycharm运行远程服务器的代码。可以参考/post/173477.htm 这里配置

远程图片显示问题

如果上面的你都搞定了,但是发现,用opencv或者Image不能显示图片,那么就按照下面的步骤做即可。

首先,开启服务器的ssh转发服务,这样当遇到有GUI的请求,就可以转发了。

vim /etc/ssh/ssh_config

把这三个打开即可。

此时说明远程转发开启了。

其次,本地用ssh链接服务器,我用的mobaxterm,因为它里面自带的有x-server服务。

如果你用的windows的黑窗口,则需要安装xming等x-server服务。

此时你在mobaxterm里面尝试输入xclock就能弹出一个表,说明gui转发成功,然后输入echo $DISPLAY即可得到本地处理转发的位置,我的输出为localhost:20.0,说明localhost:20.0在处理gui,所以在pycharm配置一下即可。

最后,打开pycharm的Run–>Edit config–>python–>xx.py

修改Environment variables,增加DISPLAY=localhost:20.0这个变量即可。

代码测试:

from matplotlib import pyplot as plt
import cv2
from PIL import Image
import numpy as np
img =np.zeros((224,224,3))
plt.imshow(img)
# plt.show()
cv2.imshow("a",img)
cv2.waitKey()

可以发现能够展示,注意的是,如果用的Image显示,一定在最后增加一个等待的代码,比如input(),否则会一闪而过。

后记

后来发现其实plt展示的方式,什么都不用配置,并且plt.imshow()即可以接受图片PIL,也可以接受数组,也挺方便。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python实现画五角星和螺旋线的示例

python实现画五角星和螺旋线的示例

如下所示: # -*- coding:UTF-8 -*- __author__ = "zhangguodong" __time__ = "2017.11.16" import t...

利用Python学习RabbitMQ消息队列

RabbitMQ可以当做一个消息代理,它的核心原理非常简单:即接收和发送消息,可以把它想象成一个邮局:我们把信件放入邮箱,邮递员就会把信件投递到你的收件人处,RabbitMQ就是一个邮箱...

python网络应用开发知识点浅析

发送电子邮件 在即时通信软件如此发达的今天,电子邮件仍然是互联网上使用最为广泛的应用之一,公司向应聘者发出录用通知、网站向用户发送一个激活账号的链接、银行向客户推广它们的理财产品等几乎...

pyhanlp安装介绍和简单应用

pyhanlp安装介绍和简单应用

1. 前言 中文分词≠自然语言处理! Hanlp HanLP是由一系列模型与算法组成的Java工具包,目标是普及自然语言处理在生产环境中的应用。HanLP具备功能完善、性能高效、架构清...

Python list列表中删除多个重复元素操作示例

本文实例讲述了Python list列表中删除多个重复元素操作。分享给大家供大家参考,具体如下: 我们以下面这个list为例,删除其中所有值为6的元素: l=[9,6,5,6,6,7...