分享一个手写汉字数据集

说明一下,这个数据集基于中科院自动化研究院的HWDB上,修改加工而成的,把单字拼成了字符串,不过需要说明的是,这个数据集只有3755个字,并不算很全。此外,语义信息是用的搜狗的新闻数据。

训练集有20万,测试集是1万。

图片大小是长280,高32。

百度网盘

提取码: i6km

  • 7
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 11
    评论
搭建手写汉字数据集需要以下步骤: 1. 收集样本:收集手写汉字样本,可以通过招募志愿者或者使用在线手写板等方式进行采集。 2. 图像处理:将手写汉字样本转换为数字矩阵,可以使用matlab中的image processing工具箱实现。具体步骤包括:将图片转换为灰度图、调整图片大小、将像素值归一化等。 3. 标注数据:将手写汉字样本的标签与数字矩阵对应起来,可以使用matlab中的repmat函数生成标签矩阵。 4. 划分数据集:将数据集划分为训练集、验证集和测试集,可以使用matlab中的randperm函数随机划分数据集。 5. 存储数据集:将处理好的手写汉字数据集存储为.mat文件,方便后续的模型训练和应用。 以下是一个简单的手写汉字数据集的搭建示例: ```matlab % 收集样本 % 假设手写汉字样本存储在data目录下,每个汉字的样本存储在一个单独的文件夹中 % 图像处理 dataset = []; for i = 1:3755 % 假设有3755个汉字 img_dir = sprintf('data/%d', i); img_files = dir([img_dir, '/*.jpg']); % 假设样本为jpg格式 for j = 1:length(img_files) img = imread([img_dir, '/', img_files(j).name]); % 读取图片 img = imresize(img, [32, 32]); % 调整图片大小为32x32 img = rgb2gray(img); % 将图片转换为灰度图 img = double(img(:)) / 255; % 将图片转换为数字矩阵并归一化 dataset = [dataset, img]; end end % 标注数据 y = double(repmat(eye(3755), 141, 1)); % 构造标签矩阵,每个汉字有141个样本 % 划分数据集 rand_idx = randperm(size(dataset, 2)); train_idx = rand_idx(1:8000); val_idx = rand_idx(8001:9000); test_idx = rand_idx(9001:end); train_dataset = dataset(:, train_idx); train_y = y(train_idx, :); val_dataset = dataset(:, val_idx); val_y = y(val_idx, :); test_dataset = dataset(:, test_idx); test_y = y(test_idx, :); % 存储数据集 save('handwritten_chinese.mat', 'train_dataset', 'train_y', 'val_dataset', 'val_y', 'test_dataset', 'test_y'); ``` 需要注意的是,以上代码示例仅是一个简单的手写汉字数据集的搭建示例,实际应用需要根据具体情况进行调整和扩展。
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值