फ़ोटो से EXIF डेटा कैसे निकालें
डिजिटल कैमरे या स्मार्टफोन से ली गई हर फ़ोटो में छुपे हुए मेटाडेटा होते हैं जिन्हें EXIF डेटा कहते हैं। इसमें कैमरा मॉडल, शटर स्पीड, अपर्चर, ISO, फ़ोकल लेंथ, फ़ोटो लेने का सटीक समय, और — अगर लोकेशन सर्विस चालू थी — कुछ मीटर की सटीकता वाले GPS निर्देशांक रिकॉर्ड होते हैं।
इसे पढ़ने का तरीका यहाँ है।
EXIF डेटा कैसा दिखता है
स्मार्टफोन से ली गई एक सामान्य JPEG में इस तरह के फ़ील्ड होते हैं:
| फ़ील्ड | उदाहरण मान |
|---|---|
| Make | Apple |
| Model | iPhone 15 Pro |
| DateTime | 2025:09:14 14:32:05 |
| ExposureTime | 1/120 |
| FNumber | f/1.8 |
| ISO | 64 |
| FocalLength | 6.86 mm |
| GPSLatitude | 28° 36' 35" N |
| GPSLongitude | 77° 12' 32" E |
| Software | iOS 18.0 |
इस उदाहरण के GPS निर्देशांक नई दिल्ली की ओर इशारा करते हैं। अगर आप घर पर ली फ़ोटो पोस्ट करते हैं, तो EXIF डेटा भी उसके साथ चला जाता है — जब तक आप पहले इसे हटा न दें।
ब्राउज़र में EXIF पढ़ें (कोई सॉफ़्टवेयर नहीं)
ब्राउज़र-आधारित EXIF व्यूअर फ़ोटो को बिना अपलोड किए लोकल पर पार्स करते हैं। फ़ोटो खींचें, और टूल सभी एम्बेड मेटाडेटा दिखाता है। कोई अकाउंट नहीं, कोई इंस्टॉल नहीं, कोई डेटा कहीं नहीं भेजा जाता।
एक बार की जाँच के लिए यह सबसे तेज़ विकल्प है — फ़ोटो के निर्देशांक जाँचना, टाइमस्टैंप पुष्टि करना, या कैमरा सेटिंग्स सत्यापित करना।
Python में Pillow से EXIF पढ़ें
Pillow लाइब्रेरी JPEG और TIFF फ़ाइलों से EXIF डेटा पढ़ती है।
from PIL import Image
from PIL.ExifTags import TAGS
def read_exif(path: str) -> dict:
img = Image.open(path)
raw_exif = img._getexif()
if not raw_exif:
return {}
return {TAGS.get(tag, tag): value for tag, value in raw_exif.items()}
exif = read_exif("photo.jpg")
for key, value in exif.items():
print(f"{key}: {value}")
GPS निर्देशांक निकालें
GPS डेटा EXIF में नेस्टेड स्ट्रक्चर में स्टोर होता है। इसे दशमलव डिग्री में डीकोड करने का तरीका:
from PIL import Image
from PIL.ExifTags import TAGS, GPSTAGS
def get_gps_coordinates(path: str):
img = Image.open(path)
raw_exif = img._getexif()
if not raw_exif:
return None
# GPSInfo टैग खोजें (टैग नंबर 34853)
gps_info = None
for tag, value in raw_exif.items():
if TAGS.get(tag) == "GPSInfo":
gps_info = {GPSTAGS.get(t, t): v for t, v in value.items()}
break
if not gps_info:
return None
def to_decimal(dms, ref):
degrees, minutes, seconds = dms
decimal = float(degrees) + float(minutes) / 60 + float(seconds) / 3600
if ref in ("S", "W"):
decimal = -decimal
return decimal
lat = to_decimal(gps_info["GPSLatitude"], gps_info["GPSLatitudeRef"])
lon = to_decimal(gps_info["GPSLongitude"], gps_info["GPSLongitudeRef"])
return lat, lon
coords = get_gps_coordinates("photo.jpg")
if coords:
lat, lon = coords
print(f"https://maps.google.com/?q={lat},{lon}")
ExifTool (कमांड लाइन)
Phil Harvey द्वारा ExifTool सबसे व्यापक EXIF रीडर है। यह सैकड़ों फ़ॉर्मेट हैंडल करता है — JPEG, TIFF, RAW फ़ॉर्मेट, वीडियो, PDF और अधिक।
# इंस्टॉल करें
brew install exiftool # macOS
sudo apt install libimage-exiftool-perl # Ubuntu/Debian
# फ़ाइल से सभी मेटाडेटा पढ़ें
exiftool photo.jpg
# निश्चित फ़ील्ड पढ़ें
exiftool -DateTimeOriginal -GPSLatitude -GPSLongitude photo.jpg
# फ़ोल्डर की सभी JPEG से EXIF निकालें
exiftool -r /path/to/folder
# JSON के रूप में आउटपुट
exiftool -json photo.jpg
# सभी मेटाडेटा हटाएं (प्राइवेसी)
exiftool -all= photo.jpg
प्राइवेसी के लिए EXIF डेटा हटाएं
अगर आप फ़ोटो सार्वजनिक रूप से साझा कर रहे हैं और GPS निर्देशांक या डिवाइस जानकारी उजागर नहीं करना चाहते:
# ExifTool: सब हटाएं
exiftool -all= photo.jpg
# हटाएं लेकिन ओरिजिनल रखें (photo_original बैकअप बनता है)
exiftool -all= -overwrite_original photo.jpg
Python में Pillow से:
from PIL import Image
import io
def strip_exif(input_path: str, output_path: str):
img = Image.open(input_path)
# केवल पिक्सेल डेटा से नई इमेज बनाएं — EXIF नहीं
clean = Image.new(img.mode, img.size)
clean.putdata(list(img.getdata()))
clean.save(output_path)
कौन से फ़ाइल फ़ॉर्मेट में EXIF है?
| फ़ॉर्मेट | EXIF समर्थन |
|---|---|
| JPEG | हाँ — सबसे सामान्य |
| TIFF | हाँ |
| PNG | नहीं (अलग मेटाडेटा उपयोग करता है: iTXt chunks) |
| HEIC/HEIF | हाँ (आधुनिक iPhone फ़ॉर्मेट) |
| WebP | सीमित (बेसिक Exif chunk) |
| RAW (CR2, NEF, ARW) | हाँ — विस्तृत कैमरा डेटा |
| कोई EXIF नहीं (XMP मेटाडेटा है) | |
| वीडियो (MP4, MOV) | EXIF नहीं, लेकिन अलग atoms में निर्माण समय + GPS |
मुख्य बातें
- EXIF डेटा JPEG/TIFF फ़ाइलों में एम्बेड है और कैमरा सेटिंग, टाइमस्टैंप और GPS निर्देशांक रिकॉर्ड करता है।
- ब्राउज़र टूल फ़ाइलें लोकल पर प्रोसेस करता है — संवेदनशील फ़ोटो के लिए कोई अपलोड नहीं।
- Python का Pillow बेसिक EXIF हैंडल करता है; सभी फ़ॉर्मेट में व्यापक निष्कर्षण के लिए ExifTool।
- EXIF में GPS निर्देशांक घर का पता पहचानने के लिए काफ़ी सटीक हैं — प्राइवेसी मायने रखती हो तो साझा करने से पहले हटाएं।
- PNG फ़ाइलें EXIF उपयोग नहीं करतीं; इसके बजाय iTXt या tEXt chunks देखें।