У других людей есть эта проблема, я использовал их решения, но не решил.
Я использую virtual env with python3.5
.Matplotlib
устанавливается под virtual env
.У меня установлен python3.tkinter в системе.
Когда я проверяю
matplotlib.get_backend()
У меня
>>> import matplotlib
>>> matplotlib.get_backend()
'TkAgg'
Но когда я запускаю код ниже
for image_path in TEST_IMAGE_PATHS:
image = Image.open(image_path)
# the array based representation of the image will be used later in order to prepare the
# result image with boxes and labels on it.
image_np = load_image_into_numpy_array(image)
# Expand dimensions since the model expects images to have shape: [1, None, None, 3]
image_np_expanded = np.expand_dims(image_np, axis=0)
# Actual detection.
output_dict = run_inference_for_single_image(image_np, detection_graph)
# Visualization of the results of a detection.
vis_util.visualize_boxes_and_labels_on_image_array(
image_np,
output_dict['detection_boxes'],
output_dict['detection_classes'],
output_dict['detection_scores'],
category_index,
instance_masks=output_dict.get('detection_masks'),
use_normalized_coordinates=True,
line_thickness=8)
#plt.figure(figsize=IMAGE_SIZE)
plt.imshow(image_np)
plt.show()
У меня проблема как
UserWarning: Matplotlib is currently using agg, which is a non-GUI backend, so cannot show the figure.
% get_backend())
Я поставил в заголовке как
from io import StringIO
import matplotlib
matplotlib.rcParams["backend"] = "TkAgg"
from matplotlib import pyplot as plt
from PIL import Image
некоторые люди сказали, что она решена, но у меня все еще та же проблема, и plt
нене отображать изображение.