Python课后习题训练记录Day195

1.练习项目 :

练习使用Python语言

2.开始练习

(1)源码 :

import tensorflow as tf

import pandas as pd

import numpy as np

import matplotlib.pyplot as plt

from pathlib import Path

BASE_PATH = Path("data/banana-detection/bananas_train/")

IMAGE_PATH = BASE_PATH / "images"

LABEL_PATH = BASE_PATH / "label.csv"

print(IMAGE_PATH, LABEL_PATH)

读取标签文件

df = pd.read_csv(LABEL_PATH)

filenames = df'img_name'.tolist()

print(filenames)

通过该函数读取的图片都是归一化处理后的图片

def load_image(path):

image = tf.io.read_file(path)

decoded_image = tf.image.decode_jpeg(image, channels=3)

img = tf.image.convert_image_dtype(decoded_image, tf.float32)

return img

def display_images(images, title=None):

"""显示图片列表"""

if title is None:

title = "Banana Detection Samples"

rows = len(images)

cols = 1 # 每行一张

fig, axes = plt.subplots(rows, cols, figsize=(6, rows * 3))

确保 axes 是二维数组

axes = np.atleast_2d(axes)

for i, img in enumerate(images):

将 Tensor 转为 numpy 数组,并显示

img_np = img.numpy()

axesi, 0.imshow(img_np)

axesi, 0.axis("off")

axesi, 0.set_title(filenamesi)

plt.suptitle(title)

plt.tight_layout()

plt.show()

def main():

images = \[\]

bbox_list = \[\]

读取前 5 张图片

for i in range(5):

image_path = IMAGE_PATH / filenamesi

img = load_image(str(image_path))

images.append(img)

如果需要边界框,可以从 df 中读取,这里暂时留空

bbox = df.locdf\['img_name' == filenamesi, 'xmin', 'ymin', 'xmax', 'ymax'].values0

bbox_list.append(bbox)

显示图片

display_images(images)

if name == "main":

main()

(2)检验结果

对此代码进行检验,检验后无报错,运行此代码,运行结果正确。

(3)练习心得:

注意每段代码末尾的分号是否存在 ,如不存在则需即使补充;输入法 是否切换为英语模式;语法是否错误。

相关推荐
§ꦿCFོ༉37 分钟前
嵌入式八股文—C语言入门学习(四)
c语言·开发语言·学习
投图匠1 小时前
十种不同风格的 CTP接口 框架
开发语言·python
2601_967980112 小时前
深入理解词向量算法及其在Python中的实践
python·word2vec·glove·fasttext·词向量
129Lab3 小时前
电池循环测试数据自动化分析:用Python+AI工具构建一键式寿命评估流水线
python·数据分析·电池测试·数据自动化·寿命评估
treasure1403 小时前
【复古】浅尝Django前后端不分离
前端·css·python·django·bootstrap·html·web
Dmz丶4 小时前
前端转 AI 100 天 Day 44:前端集成实战——用 React 给 Agent 做个正式界面
python
jay神4 小时前
基于 YOLOv8 的手势识别系统(Web 版)
前端·人工智能·python·深度学习·yolo·计算机视觉·计算机毕业设计
DeepVisionary4 小时前
阿里云上线旗舰多模态新模型,不公布跑分且限时14天退役
python·自动化
东莞市云毅网络有限公司4 小时前
FAQ 覆盖度打分:TF-IDF 与向量嵌入双路召回的 Python 实现
python·数据清洗·rag·企业知识库·文档解析
爱笑的k114 小时前
nano-vllm 源码剖析:千行 Python 手写离线推理引擎的调度、显存与并行时序
开发语言·python·vllm