https://github.com/joshuagilgallon/cam-data
Large collection of data about digital cameras
https://github.com/joshuagilgallon/cam-data
camera data
Last synced: 2 months ago
JSON representation
Large collection of data about digital cameras
- Host: GitHub
- URL: https://github.com/joshuagilgallon/cam-data
- Owner: JoshuaGilgallon
- Created: 2025-03-20T08:30:57.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-03-20T09:25:17.000Z (over 1 year ago)
- Last Synced: 2025-03-20T10:29:55.812Z (over 1 year ago)
- Topics: camera, data
- Homepage:
- Size: 4.18 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Camera Data Project
## Overview
This repository contains a database of digital cameras with detailed specifications and technical information. The database includes information on about 3,835 camera models across 36 brands.
## Data Statistics
- **Total Camera Models:** 3,835
- **Camera Brands:** 36
- **Total lines of data:** 185,169
- **Coverage:** Professional DSLRs, mirrorless cameras, compact cameras, and specialised equipment, plus much more.
## Repository Structure
```bash
├───JSON
│ brands.json
│ camera_data.json # Primary data file with all camera information
│ just_models.json # Just the camera models, in a JSON list
│ models.json # The models but in a dictionary structure
│
│
└───TXT
brands.txt # TXT file of every manufacturer, with each on a new line
models.txt # TXT file of every model, with each on a new line
```
## Available Data Formats
### JSON
- **camera_data.json** - Complete database with all camera specifications
- **brands.json** - List of all camera brands
- **models.json** - List of cameras grouped by brand (without specifications)
- **just_models.json** - Simple list of all camera model names
### Text
- **brands.txt** - One camera brand per line
- **models.txt** - One camera model per line
### SQLite Database
The data is also available as a SQLite database with the following schema:
- **brands** table - Information about camera manufacturers
- **cameras** table - Basic camera model information
- **specs** table - Detailed specifications for each camera
# Example SQLite Queries
### Find cameras with high megapixel counts:
```sql
SELECT b.name as brand, c.name as model, s.spec_value as megapixels
FROM cameras c
JOIN brands b ON c.brand_id = b.id
JOIN specs s ON c.id = s.camera_id
WHERE s.spec_name = 'effective megapixels'
AND CAST(REPLACE(s.spec_value, '.', '') AS FLOAT) > 30
ORDER BY CAST(REPLACE(s.spec_value, '.', '') AS FLOAT) DESC;
```
### Count cameras by brand:
```sql
SELECT b.name, COUNT(*) as camera_count
FROM cameras c
JOIN brands b ON c.brand_id = b.id
GROUP BY b.name
ORDER BY camera_count DESC;
```
# Data Updates
I will update the data ever so often. If a camera is missing please open an issue and I'll fix it.