datasets
数据集相关接口,用于操作整个数据集,而不是单张图片。
read
数据集读取相关的接口
config
读取配置文件中的标签,标记数值。
- class RectO(xmin: str = '', ymin: str = '', xmax: str = '', ymax: str = '')[源代码]
矩形对象类,用于存储和处理矩形框的坐标信息
- 属性:
xmin (str): 矩形左边界x坐标 ymin (str): 矩形上边界y坐标 xmax (str): 矩形右边界x坐标 ymax (str): 矩形下边界y坐标
- get_rectangle(filename: Path) Rect [源代码]
获取矩形框信息
- 参数:
filename (P) -- XML文件路径
- 返回:
矩形框字典
- 返回类型:
T.Rect
- get_single_digit_values(filename: Path) Tuple[str, Rect] [源代码]
获取单个数字的值和位置信息
- 参数:
filename (P) -- XML文件路径
- 返回:
返回值和矩形框信息的元组
- 返回类型:
Tuple[str, T.Rect]
- get_xml_config(img_path: Path) Tuple[str, Rect] [源代码]
获取XML配置信息
- 参数:
img_path (P) -- 图片文件路径
- 返回:
返回值和矩形框信息的元组
- 返回类型:
Tuple[str, T.Rect]
- get_xml_config_path(img_path: Path, types: Literal['value', 'block', 'single'] = 'value') Path [源代码]
根据图片路径获取对应的XML配置文件路径
- 参数:
img_path (P) -- 图片文件路径
types (Literal) -- 配置类型,可以是'value'、'block'或'single'
- 返回:
XML配置文件路径
- 返回类型:
P
- read_rect_from_file(xml_path: Path, type_: Literal['single', 'block'])[源代码]
从文件中读取矩形框信息
- 参数:
xml_path (P) -- XML文件路径
type (typeOfrect) -- 矩形框类型,可以是'single'或'block'
- 返回:
根据类型返回相应的矩形框信息
- 返回类型:
Any
- read_rect_from_node(root: Iterable) Tuple[str, Rect] [源代码]
从XML节点中读取矩形框信息
- 参数:
root (Iterable) -- XML根节点
- 返回:
返回值和矩形框字典的元组
- 返回类型:
Tuple[str, T.Rect]
single
read data from disk.
处理单个数字数据集的函数,数据集格式为 dataset_name/[0-9]
- path_fusion(root: Path, dataset_name: str, num: int)[源代码]
生成单个数字图像的路径 :param root: 根目录路径 :param dataset_name: 数据集名称 :param num: 数字(0-9)
- 返回:
对应数字图像的完整路径
- read_rand_img(root: Path, get_dataset: Callable[[], str | Path], digit: int | str, promise=False) ndarray [源代码]
随机读取一张数字图像,单字 :param root: 根目录路径 :param get_dataset: 获取数据集名称的函数 :param digit: 要读取的数字或'x'(表示空白图像) :param promise: 是否确保路径存在
- 返回:
随机选择的数字图像数组
- 抛出:
Exception -- 当数据集中没有图像时抛出异常
- read_single_digit(root_path: Path, get_dataset: Callable[[], str | Path], num: int, promise: bool) Callable[[], Iterator[Path]] [源代码]
读取单个数字的所有图像 :param root_path: 根目录路径 :param get_dataset: 获取数据集名称的函数 :param num: 要读取的数字(0-9) :param promise: 是否确保路径存在
- 返回:
返回一个生成器函数,用于遍历该数字的所有图像路径
- 抛出:
AssertionError -- 当数字不在0-9范围内时抛出
Exception -- 当找不到图像时抛出
detection
Read block area.
sample_dataset = "M1L3XL"
def select_one(root_path, dataset_name: str) -> pathlib.Path:
"""第一个图片"""
return pathlib.Path(detection.list_images(root_path, dataset_name)[0])
def test_read_to_get(root_path):
res = detection.read_image_area(
select_one(root_path, sample_dataset),
)
assert len(res) > 0
这样可以读取任意一个图片的 block 值.