pittawat/letter_recognition
收藏资源简介:
--- dataset_info: features: - name: image dtype: image - name: label dtype: class_label: names: '0': A '1': B '2': C '3': D '4': E '5': F '6': G '7': H '8': I '9': J '10': K '11': L '12': M '13': 'N' '14': O '15': P '16': Q '17': R '18': S '19': T '20': U '21': V '22': W '23': X '24': 'Y' '25': Z splits: - name: train num_bytes: 22453522 num_examples: 26000 - name: test num_bytes: 2244964.8 num_examples: 2600 download_size: 8149945 dataset_size: 24698486.8 task_categories: - image-classification language: - en size_categories: - 1K<n<10K --- # Dataset Card for "letter_recognition" Images in this dataset was generated using the script defined below. The original dataset in CSV format and more information of the original dataset is available at [A-Z Handwritten Alphabets in .csv format](https://www.kaggle.com/datasets/sachinpatel21/az-handwritten-alphabets-in-csv-format). ```python import os import pandas as pd import matplotlib.pyplot as plt CHARACTER_COUNT = 26 data = pd.read_csv('./A_Z Handwritten Data.csv') mapping = {str(i): chr(i+65) for i in range(26)} def generate_dataset(folder, end, start=0): if not os.path.exists(folder): os.makedirs(folder) print(f"The folder '{folder}' has been created successfully!") else: print(f"The folder '{folder}' already exists.") for i in range(CHARACTER_COUNT): dd = data[data['0']==i] for j in range(start, end): ddd = dd.iloc[j] x = ddd[1:].values x = x.reshape((28, 28)) plt.axis('off') plt.imsave(f'{folder}/{mapping[str(i)]}_{j}.jpg', x, cmap='binary') generate_dataset('./train', 1000) generate_dataset('./test', 1100, 1000) ```
### 数据集信息 #### 特征字段 1. **image(图像)**:数据类型为图像类型 2. **label(标签)**:数据类型为类别标签(class_label),类别名称映射关系如下: - 0: A - 1: B - 2: C - 3: D - 4: E - 5: F - 6: G - 7: H - 8: I - 9: J - 10: K - 11: L - 12: M - 13: N - 14: O - 15: P - 16: Q - 17: R - 18: S - 19: T - 20: U - 21: V - 22: W - 23: X - 24: Y - 25: Z #### 数据划分 1. 训练集(train):占用字节数22453522,样本总量26000 2. 测试集(test):占用字节数2244964.8,样本总量2600 #### 全局统计 下载大小:8149945 字节;总数据集大小:24698486.8 字节 #### 任务与属性 任务类别:图像分类(image-classification);语言:英语(en);样本量范围:1K < n < 10K --- # 「字母识别」数据集卡片 本数据集的图像通过下述脚本生成。原始数据集为CSV格式,更多相关信息可参阅[A-Z手写字母CSV数据集](https://www.kaggle.com/datasets/sachinpatel21/az-handwritten-alphabets-in-csv-format)。 python import os import pandas as pd import matplotlib.pyplot as plt # 设定字符总数为26 CHARACTER_COUNT = 26 # 读取原始CSV格式数据集 data = pd.read_csv('./A_Z Handwritten Data.csv') # 构建数字索引到大写字母的映射字典:0→A,1→B,依此类推至25→Z mapping = {str(i): chr(i+65) for i in range(26)} def generate_dataset(folder, end, start=0): """生成指定字母类别的图像数据集并保存至目标文件夹""" if not os.path.exists(folder): os.makedirs(folder) print(f"文件夹'{folder}'已成功创建!") else: print(f"文件夹'{folder}'已存在。") # 遍历全部26个字母类别 for i in range(CHARACTER_COUNT): # 筛选出当前类别对应的所有样本 dd = data[data['0'] == i] # 遍历指定索引范围内的样本 for j in range(start, end): # 获取当前样本的像素数据(排除首列的标签列) ddd = dd.iloc[j] x = ddd[1:].values # 将一维像素数组重塑为28×28的二维图像矩阵 x = x.reshape((28, 28)) # 关闭图像坐标轴 plt.axis('off') # 以二进制灰度模式保存图像,命名格式为「{文件夹路径}/{字母}_{索引}.jpg」 plt.imsave(f'{folder}/{mapping[str(i)]}_{j}.jpg', x, cmap='binary') # 生成训练集:每个字母选取前1000个样本,总计26×1000=26000个样本 generate_dataset('./train', 1000) # 生成测试集:每个字母选取索引1000至1100的样本,总计26×100=2600个样本 generate_dataset('./test', 1100, 1000)
数据集概述
数据集名称
- 名称: letter_recognition
数据集特征
- 特征:
- image: 图像数据
- label: 类别标签,包含26个类别,分别对应从A到Z的字母
数据集划分
- 训练集:
- 样本数量: 26000
- 存储大小: 22453522字节
- 测试集:
- 样本数量: 2600
- 存储大小: 2244964.8字节
数据集大小
- 下载大小: 8149945字节
- 数据集总大小: 24698486.8字节
任务类别
- 任务: 图像分类
语言
- 语言: 英语
大小类别
- 大小范围: 1K<n<10K




