图像解码过程中,pycharm中出现FileNotFoundError: [Errno 2] No such file or directory等错误提示

在进行图像解码过程中,运行如下代码

import tensorflow as tf
import matplotlib.pyplot as plt
from matplotlib.font_manager import FontProperties

from matplotlib import font_manager

my_font = font_manager.FontProperties(fname='Library/Fonts/Songti.tcc', size=20)

font = FontProperties(fname='Library/Fonts/Songti.tcc', size=20)
tf.keras.backend.clear_session()
print("Tensorflow:{}".format(tf.__version__))


def image_decode(image_path):
    img_bytes = tf.io.read_file(image_path)
    img_b64 = tf.io.encode_base64(img_bytes)
    img_b64 = tf.io.decode_base64(img_b64)
    img_matrix = tf.io.decode_image(img_b64)
    return img_matrix


def image_show(image_matrix):
    plt.imshow(image_matrix)
    plt.title("网络安全Base 64图像", fontproperties=font)
    plt.savefig("F:/zwb/PyCharmProjects/LetNet5/websafe_b64.png", format="png", dpi=300)
    plt.show()


if __name__ == "__main__":
    image_path = "F:/zwb/PyCharmProjects/LetNet5/swimming_monkey.jpg"
    img_matrix = image_decode(image_path)
image_show(img_matrix)
print(img_matrix)

发现结果错误,即:

FileNotFoundError: [Errno 2] No such file or directory: 'F:\\zwb\\PyCharmProjects\\LetNet5\\Library\\Fonts\\Songti.tcc'

在这里插入图片描述
如何解决?
方法:因为字体库路径错误,更改为系统字体库路径,即:

C:\Windows\Fonts\msyh.tcc  #注意,在python中,要将‘\’改为‘/’,其中msyh.tcc是微软雅黑字体。

在这里插入图片描述
更改之后,运行代码,如下:

import tensorflow as tf
import matplotlib.pyplot as plt
from matplotlib.font_manager import FontProperties

from matplotlib import font_manager

my_font = font_manager.FontProperties(fname='C:/Windows/Fonts/msyh.ttc', size=20)

font = FontProperties(fname='C:/Windows/Fonts/msyh.ttc', size=20)
tf.keras.backend.clear_session()
print("Tensorflow:{}".format(tf.__version__))


def image_decode(image_path):
    img_bytes = tf.io.read_file(image_path)
    img_b64 = tf.io.encode_base64(img_bytes)
    img_b64 = tf.io.decode_base64(img_b64)
    img_matrix = tf.io.decode_image(img_b64)
    return img_matrix


def image_show(image_matrix):
    plt.imshow(image_matrix)
    plt.title("网络安全Base 64图像", fontproperties=font)
    plt.savefig("F:/zwb/PyCharmProjects/LetNet5/websafe_b64.png", format="png", dpi=300)
    plt.show()


if __name__ == "__main__":
    image_path = "F:/zwb/PyCharmProjects/LetNet5/swimming_monkey.jpg"
    img_matrix = image_decode(image_path)
image_show(img_matrix)
print(img_matrix)

结果,图片显示正常:
在这里插入图片描述
图像矩阵数据也显示正常:
在这里插入图片描述

Guess you like

Origin blog.csdn.net/weixin_44359479/article/details/120958713