下载和使用SLUN数据集

1. 下载数据集

网址在https://opendatalab.com/OpenDataLab/lsun/tree/main/raw/scenes

下载bedroom_val_lmdb.zip

然后解压后会又两个文件,一个data.mdb,另一个lock.mdb。

2. 使用torchvison使用LSUN数据集

我把解压后的bedroom_val_lmdb放在/home/data/下。

python 复制代码
import torchvision
import matplotlib.pyplot as plt

dataset=torchvision.datasets.LSUN('/home/data/',classes=['bedroom_val'])
aa=0
print(len(dataset))  ## 300
for img,number in dataset:
    print(number)  ##为0
    plt.imshow(img)
    break

如何使用torchvision,查pytorch官网

在

https://pytorch.org/vision/stable/datasets.html找LSUN,

得到https://pytorch.org/vision/stable/generated/torchvision.datasets.LSUN.html#torchvision.datasets.LSUN

3. 转wbpq格式保存查看

这一步不是必须的,需要的时候用把,是从https://github.com/fyu/lsun里摘出来的。

python。 复制代码
import argparse
import cv2
import lmdb
import numpy
import os
from os.path import exists, join

def export_images(db_path, out_dir, flat=False, limit=-1):
    print('Exporting', db_path, 'to', out_dir)
    env = lmdb.open(db_path, map_size=1099511627776,
                    max_readers=100, readonly=True)
    count = 0
    with env.begin(write=False) as txn:
        cursor = txn.cursor()
        for key, val in cursor:
            if not flat:
                image_out_dir = join(out_dir, '/'.join(key.decode('ascii')[:6]))
            else:
                image_out_dir = out_dir
            if not exists(image_out_dir):
                os.makedirs(image_out_dir)
            image_out_path = join(image_out_dir, key.decode('ascii') + '.webp')
            with open(image_out_path, 'wb') as fp:
                fp.write(val)
            count += 1
            if count == limit:
                break
            if count % 1000 == 0:
                print('Finished', count, 'images')

export_images('/home/data/bedroom_val_lmdb', './tmp')

这样图片就会存为如下样子

相关推荐
武天旭6 小时前
AI安全--AI大模型的毒性偏见与安全对齐实践
人工智能·python·深度学习
视觉小萌新7 小时前
AI Class 3 · Chapter 2-3:函数、异常、文件读写+JSON / JSONL 读写(小白版)
人工智能·python·json
小小张说故事8 小时前
Python 的 obj.x 到底按什么顺序找?拆开数据描述符、实例字典和 __getattr__ 那条优先级链
python
用户11481867894849 小时前
水印的实现方式逻辑
前端·python
贾公子9 小时前
从单条内容到账号维度——AIGC 风险评分的工程实现
后端·python
木头左11 小时前
【Python】不点浏览器发博客:逆向 CSDN 创作中心接口做 md-publish 技能
python·自动化·api
Tt有了t11 小时前
设计模式速查
java·python·设计模式
deepseek2312 小时前
Python日志拖慢请求?QueueHandler排队、丢失与退出实测
python·性能优化·logging·后端开发·queuehandler
用户912940468484212 小时前
Codex 从零到能交付(05):第一次改代码:生成一个文件清单脚本
python
Dmz丶12 小时前
前端转 AI 100 天 Day 38:Token 管理与成本优化——别让 API 账单爆炸
python