python-3.x - 无法将情节发送到 http://127.0.0.1:63342
问题描述
我面临一个错误,即使用 python、numpy 和 matplotlob 将绘图发送到特定的 IP 地址。我附上了我到目前为止尝试过的片段。
Python
import numpy as np
import cv2
from matplotlib import pyplot as plt
img = cv2.imread('ml.png', 1)
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
img2 = cv2.imshow('img', img)
cv2.waitKey(0)
corners = cv2.goodFeaturesToTrack(gray, 30, 0.01, 10)
corners = np.int0(corners)
for i in corners:
x, y = i.ravel()
cv2.circle(img, (x, y), 10, 50, 0)
plt.imshow(img), plt.show()
MIN_MATCHES = 15
cap = cv2.imread('mario.png', 0)
model = cv2.imread('mario 3d.jpg', 0)
# create brute force matcher object
bf = cv2.BFMatcher(cv2.NORM_HAMMING, crossCheck=True)
# Compute model keypoints and its descriptors
kp_model = cv2.goodFeaturesToTrack(model, 20, 0.01, 15)
des_model = cv2.goodFeaturesToTrack(model, 20, 0.01, 15)
# Compute scene keypoints and its descriptors
kp_frame = cv2.goodFeaturesToTrack(cap, 20, 0.01, 15)
des_frame = cv2.goodFeaturesToTrack(cap, 20, 0.01, 15)
# Match frame descriptors with model descriptors
matches = bf.match(des_model, des_frame)
# Sort them in the order of their distance
matches = sorted(matches, key=lambda x: x.distance)
if len(matches) > MIN_MATCHES:
# draw first 15 matches.
cap = cv2.drawMatches(model, kp_model, cap, kp_frame,
matches[:MIN_MATCHES], 0, flags=2)
# show result
cv2.imshow('frame', cap)
cv2.waitKey(0)
else:
print
错误:
Error: failed to send plot to http://127.0.0.1:63342
urlopen(url, buffer)
return opener.open(url, data, timeout)
response = self._open(req, data)
result = self._call_chain(self.handle_open, protocol, protocol +
result = func(*args)
return self.do_open(http.client.HTTPConnection, req)
r = h.getresponse()
response.begin()
version, status, reason = self._read_status()
line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1")
return self._sock.recv_into(b)
ConnectionResetError: [WinError 10054] An existing connection was forcibly closed by the remote host
Traceback (most recent call last):
matches = bf.match(des_model, des_frame)
cv2.error: OpenCV(4.3.0) C:\projects\opencv-python\opencv\modules\core\src\batch_distance.cpp:275: error: (-215:Assertion failed) type == src2.type() && src1.cols == src2.cols && (type == CV_32F || type == CV_8U) in function 'cv::batchDistance'
解决方案
尝试在 PyCharm 中显示 matplotlib 绘图时,我还收到“错误:无法将绘图发送到http://127.0.0.1:63342”错误消息。我通过禁用设置>工具> Python Scientific下的“在工具窗口中显示绘图”选项来修复它。如果错误消息仍然存在,请尝试在 PyCharm 之外重现错误
推荐阅读
- json - 如何修复黄瓜 4.1.0 gem 中的警告格式 JSON 弃用?
- python - CNN Keras - 意外的预测结果
- floating-point - 使用可以容纳 32 个字节的媒体寄存器的目的是什么
- ruby-on-rails - 在 Docker 容器上设置 Rails 控制台不接受任何输入
- asp.net-core - 使用类型化的 HttpClient 创建 LinkedTokenSource
- javascript - 如何在鼠标下获取每个 SVG 元素的列表并在 SVG 中更改 mouseenter/touchstart 下每个元素的颜色
- kotlin - 将具体的泛型类型转换为具有 Any 上限的非 null
- javascript - 向菜单项添加类而不改变样式
- salesforce - 将 Salesforce Einstein 聊天机器人集成到使用 Dot Net 和 Angular 构建的网站中
- elasticsearch - Elasticsearch基于公共字段合并多个索引