sabaridsnfuji/rvl-cdip-filtered
RVL-CDIP Filtered Dataset This dataset contains filtered images from the RVL-CDIP dataset, focusing on 4 specific document types. Dataset Summary A filtered subset of the RVL-CDIP (Ryerson Vision Lab Complex Document Information Processing) dataset containing 100,000 images across 4 document categories. Each image is stored as base64-encoded data in Parquet format for efficient processing. Classes Label Class Name Description 0 letter… See the full description on the dataset page: https://huggingface.co/datasets/sabaridsnfuji/rvl-cdip-filtered.
RVL-CDIP Filtered Dataset
This dataset contains filtered images from the RVL-CDIP dataset, focusing on 4 specific document types.
Dataset Summary
A filtered subset of the RVL-CDIP (Ryerson Vision Lab Complex Document Information Processing) dataset containing 100,000 images across 4 document categories. Each image is stored as base64-encoded data in Parquet format for efficient processing.
Classes
Dataset Statistics
Train Split
- 0_letter: 20,106 images
- 1_form: 19,957 images
- 2_email: 19,954 images
- 14_resume: 20,037 images
- Total train: 80,054 images
Validation Split
- 0_letter: 2,430 images
- 1_form: 2,537 images
- 2_email: 2,530 images
- 14_resume: 2,426 images
- Total validation: 9,923 images
Test Split
- 0_letter: 2,464 images
- 1_form: 2,506 images
- 2_email: 2,516 images
- 14_resume: 2,537 images
- Total test: 10,023 images
Grand Total: 100,000 images
Dataset Structure
The dataset is provided in Parquet format with the following columns:
image_path: Original path of the image fileimage_base64: Base64-encoded image datalabel: Integer label (0, 1, 2, or 14)class_name: Human-readable class namewidth: Image width in pixelsheight: Image height in pixelsformat: Image format (jpg, png, etc.)file_size_bytes: Original file size in bytessplit: Dataset split (train/validation/test)
Usage
Loading with Hugging Face Datasets
from datasets import load_dataset
import base64
from PIL import Image
import io
# Load the dataset
dataset = load_dataset("sabaridsnfuji/rvl-cdip-filtered")
# Access splits
train_data = dataset['train']
val_data = dataset['validation']
test_data = dataset['test']
# Decode an image
def decode_image(base64_string):
image_data = base64.b64decode(base64_string)
image = Image.open(io.BytesIO(image_data))
return image
# Example: Get first image from training set
first_record = train_data[0]
image = decode_image(first_record['image_base64'])
label = first_record['label']
class_name = first_record['class_name']Loading with Pandas
import pandas as pd
import base64
from PIL import Image
import io
# Load specific split
df = pd.read_parquet('train.parquet')
# Decode images
def decode_image(base64_string):
image_data = base64.b64decode(base64_string)
return Image.open(io.BytesIO(image_data))
# Apply to get images
df['image'] = df['image_base64'].apply(decode_image)File Formats
- train.parquet: Training set
- validation.parquet: Validation set
- test.parquet: Test set
Each Parquet file contains the complete image data and metadata, making the dataset self-contained and easy to work with.
Original Dataset
This is a filtered subset of the RVL-CDIP dataset:
- Original paper: "RVL-CDIP: A New Dataset for Cross-Domain Document Layout Analysis"
- Original dataset: Contains 16 classes, we selected 4 most relevant ones
- Maintains: Original train/validation/test splits
- Citation:
@inproceedings{{harley2015evaluation,
title={{Evaluation of deep convolutional nets for document image classification and retrieval}},
author={{Harley, Adam W and Ufkes, Alex and Derpanis, Konstantinos G}},
booktitle={{International Conference on Document Analysis and Recognition}},
pages={{991--995}},
year={{2015}},
organization={{IEEE}}
}}License
This dataset follows the same license terms as the original RVL-CDIP dataset.
Dataset Creation
The dataset was created by:
- Filtering the original RVL-CDIP dataset for specific document types
- Converting images to base64 encoding for efficient storage
- Adding metadata (dimensions, format, file size)
- Saving in Parquet format for optimal performance
Use Cases
- Document classification
- Computer vision research
- Transfer learning for document analysis
- Multi-class classification benchmarking
- Document understanding systems
