ชุดฉันจะเปลี่ยนข้อมูลวันที่ที่ถ่ายในข้อมูล EXIF ​​ได้อย่างไร


30

ฉันใช้ F-Spot เพื่อจัดการภาพของฉัน สำหรับภาพหนึ่งชุดวันที่ใด ๆ ก็เกิดความสับสนและพวกเขาทั้งหมดถูกทำเครื่องหมายเป็น 1 กันยายน 2007 ฉันต้องการเปลี่ยนวันที่ที่ถ่ายข้อมูลเป็นวันที่ที่แตกต่างกัน ฉันจะทำสิ่งนี้ได้อย่างไร

คำตอบ:


25

jheadสามารถทำสิ่งนี้ได้

สมมติว่าคุณทราบว่ามีรูปภาพบางรูปถ่ายอยู่2017-04-19 16:20แต่วันที่ปัจจุบันแสดงเป็น2007-09-01 00:15คุณสามารถปรับjpgรูปภาพทั้งหมดในโฟลเดอร์ให้ถูกเวลาโดยทำดังนี้

jhead -da2017:04:19/16:20-2007:09:01/00:15 *.jpg

นี่คือสารสกัดจากคู่มือ:

DATE / TIME MANIPULATION:
   -ft        Set file modification time to Exif time
   -dsft      Set Exif time to file modification time
   -n[format-string]
             Rename files according to date.  Uses exif date if present, file
             date otherwise.  If the optional format-string is not supplied,
             the format is mmdd-hhmmss.  If a format-string is given, it is
             is passed to the 'strftime' function for formatting
             In addition to strftime format codes:
             '%f' as part of the string will include the original file name
             '%i' will include a sequence number, starting from 1. You can
             You can specify '%03i' for example to get leading zeros.
             This feature is useful for ordering files from multiple digicams to
             sequence of taking.  Only renames files whose names are mostly
             numerical (as assigned by digicam)
             The '.jpg' is automatically added to the end of the name.  If the
             destination name already exists, a letter or digit is added to
             the end of the name to make it unique.
  -nf[format-string]
             Same as -n, but rename regardless of original name
  -a         (Windows only) Rename files with same name but different extension
             Use together with -n to rename .AVI files from exif in .THM files
             for example
  -ta<+|->h[:mm[:ss]]
             Adjust time by h:mm backwards or forwards.  Useful when having
             taken pictures with the wrong time set on the camera, such as when
             traveling across time zones or DST changes. Dates can be adjusted
             by offsetting by 24 hours or more.  For large date adjustments,
             use the -da option
  -da<date>-<date>
             Adjust date by large amounts.  This is used to fix photos from
             cameras where the date got set back to the default camera date
             by accident or battery removal.
             To deal with different months and years having different numbers of
             days, a simple date-month-year offset would result in unexpected
             results.  Instead, the difference is specified as desired date
             minus original date.  Date is specified as yyyy:mm:dd or as date
             and time in the format yyyy:mm:dd/hh:mm:ss
  -ts<time>  Set the Exif internal time to <time>.  <time> is in the format
             yyyy:mm:dd-hh:mm:ss
  -ds<date>  Set the Exif internal date.  <date> is in the format YYYY:MM:DD
             or YYYY:MM or YYYY

เป็นตัวเลือกที่มีประสิทธิภาพยิ่งขึ้นเป็นExifTool


เมื่อเร็ว ๆ นี้ใช้ jhead เพื่อแก้ไขและซิงค์วันที่ / เวลาบนภาพนับร้อยจากวันหยุดพักผ่อนของครอบครัวซึ่งมีกล้องสามตัวที่มีข้อมูลและเวลาที่ตั้งไว้อย่างไม่ถูกต้อง ใช้งานง่ายและมีประโยชน์มาก
Will M

Jhead ดูเหมือนจะไม่รองรับไฟล์ประเภท RAW แต่ ExifTool ทำเช่น (เช่น Canon CR2, Nikon NEF, Sony ARW) เป็นการดีที่จะรู้ว่าสำหรับพวกเราที่เพิ่งถ่ายทำเฉพาะใน RAW หรือทั้ง RAW และ JPEG
Samir

มันเข้ากันได้กับ Windows 10 หรือไม่?
XPMai

@XPMai ยังคงทำงานกับ Windows 10 - ฉันลงเอยด้วยการใช้ -ds เพื่อจุดประสงค์ของฉัน
alexander7567

4

Picasa มีตัวนี้ เครื่องมือ => ปรับวันที่และเวลา ...


น่าเสียดายที่มันใช้งานได้เฉพาะต่อไฟล์
user46193

@ อัปเดต user46193: ขณะนี้ใช้ได้กับรูปภาพทุกรูปแบบที่คุณเลือก
urig

Google: "Picasa ถูกยกเลิกแล้ว ... Picasa จะไม่สามารถดาวน์โหลดได้อีกต่อไป" เกิดอะไรขึ้นกับ Picasa, Picasa Web Albums และ Picasa Web Albums API
JohnC

3

exiv2เป็นเครื่องมือบรรทัดคำสั่งเพื่อจัดการข้อมูล exif รูปแบบภาพที่รองรับคือ JPEG, Canon CRW และ Canon THM PNG เป็นแบบอ่านอย่างเดียว

หากคุณต้องการกำหนดวันที่ไฟล์เป็นวันที่ exif คุณสามารถใช้ exiv2 พร้อมตัวเลือกต่อไปนี้

ตั้งค่าการประทับเวลาไฟล์ตาม Exif สร้างการประทับเวลานอกเหนือจากการเปลี่ยนชื่อไฟล์ (แทนที่ -k) ตัวเลือกนี้ใช้กับการกระทำ 'เปลี่ยนชื่อ' เท่านั้น


ขอบคุณ! exiv2 ใช้งานง่ายและรวดเร็ว -Tอนุญาตให้ตั้งค่าการประทับเวลาของไฟล์โดยไม่ต้องเปลี่ยนชื่อไฟล์ :)
orzechow


2

นี่คือสิ่งที่ฉันต้องการ

หากต้องการเพิ่มค่าคงที่ชดเชยให้กับวันที่เก่า

exiv2 ad -a -3:17 *.JPG

เพื่อเปลี่ยนชื่อเป็น %Y%m%d_%H%M%S

exiv2 mv *.JPG

รูปแบบและตัวเลือกอื่น ๆ ที่ระบุไว้ในหน้าคน


1

คุณอาจจะลองใช้เครื่องมือนี้ฟรี: Exifer


1
@ RandolphWest โปรดทิ้งลิงค์ความคิดเห็นนี้ไว้เท่านั้นหากสมเหตุสมผล แม้ว่าคำตอบนี้จะไม่สมบูรณ์แบบทุกสิ่งทุกอย่างสามารถถูกกำหนดได้อย่างง่ายดายโดยคลิกที่ลิงก์ ทุกอย่างอื่นที่สามารถรวมที่นี่จะไม่ช่วยถ้าหน้าเชื่อมโยงมีการเปลี่ยนแปลงในทางที่สำคัญเพราะซอฟต์แวร์จะไม่สามารถดาวน์โหลดได้อีกต่อไป อันที่จริงรวมถึงรายละเอียดมากเกินไป (เช่นรายการคุณสมบัติสมบูรณ์) เพียงหมายความว่าคำตอบอย่างรวดเร็วกลายเป็นล้าสมัยหากมีการเปลี่ยนแปลงซอฟต์แวร์ที่เชื่อมโยง
Daniel Beck

@DanielBeck ความจริงที่ว่าลิงก์ในคำตอบจะไม่นำไปสู่อีกต่อไปซึ่งควรเป็นตัวอย่างที่สมบูรณ์แบบสำหรับสาเหตุที่คำตอบสำหรับลิงค์เท่านั้นเป็นอึ
Raphael

@Raphael โปรดอ่านความคิดเห็นของฉันอีกครั้งโดยเริ่มจากประโยคที่สาม ไม่มีสิ่งใดที่สามารถอนุมานได้ที่นี่จะสามารถแก้ไขคำตอบนี้ได้
Daniel Beck

1

ฉันใช้สคริปต์ต่อไปนี้เพื่อให้ภาพมีวันที่ต่อเนื่องกัน หวังว่ามันจะช่วย คาดว่าไดเรกทอรีที่มีรูปภาพจะถูก redated เป็นอาร์กิวเมนต์ i .escript directory_with_images

#!/bin/bash
HOUR=12
MINUTE=0
DATE=2004:06:20
for file in "$1"/*;
do 
    exiv2 -v -M"set  Exif.Image.DateTime $DATE $(printf %02d $HOUR):$(printf %02d $MINUTE):00" "$file"
    exiv2 -v -M"set  Exif.Photo.DateTimeDigitized $DATE $(printf %02d $HOUR):$(printf %02d $MINUTE):00" "$file"
    exiv2 -v -M"set  Exif.Photo.DateTimeOriginal $DATE $(printf %02d $HOUR):$(printf %02d $MINUTE):00" "$file"
    #sets file timestamp (i.e. filesystem metadata, not image metadata) as well
    exiv2 -v -T "$file"
    if [ $MINUTE = 59 ]; then
        HOUR=$((HOUR + 1))
        MINUTE=0
    else
        MINUTE=$((MINUTE + 1))
    fi
    # this would rename the file as well
    #new_path=`pwd`/new_filename$(printf %02d $HOUR)$(printf %02d $MINUTE).jpg
    #cp "$file" "$new_path"
done

0

iPhoto และ Aperture นั้นมีตัวเลือกการเลื่อนเวลาสำหรับเมื่อคุณอยู่ในเขตเวลาใหม่โดยปกติหรือนาฬิกาไม่ถูกต้อง มันสามารถปล่อยให้ไฟล์ไม่มีการแก้ไข (เพียงอัปเดตฐานข้อมูลของแอพ) หรือแก้ไขไฟล์ เห็นได้ชัดว่า F-Spot ต้องการยืมสิ่งนี้


0

Exiftool: ช้าในบรรทัดคำสั่ง (มันเขียนด้วยภาษา Perl ดังนั้นเขียนข้อสรุปของคุณเองที่นั่น)

Exifer สร้างแท็กเปล่าหรือสองไฟล์ในไฟล์ไม่ใช่เฉพาะในบล็อก EXIF มันจะลบแท็กบางรายการที่เขียนโดยเครื่องมืออื่น ๆ เนื่องจากฉันไม่ได้ใช้งานมานานกว่าหนึ่งปีฉันจึงไม่สามารถระบุได้อย่างชัดเจน

สิ่งที่ FastStone คือ imx ช้าเกินกว่าจะติดตั้งได้นานกว่าหนึ่งหรือสองวัน

คะแนนของฉันคือสำหรับ Hr คำแนะนำของ Weinzerl: Exiv2

BZT


0

Picasa 3เป็นเครื่องมือจัดการภาพถ่ายฟรีจาก Google จะทำสิ่งนี้และมันก็ดีและรวดเร็ว

ใน Picasa เลือกเมนูมุมมอง> คุณสมบัติเพื่อแสดงบานหน้าต่างคุณสมบัติ

เลือกโฟลเดอร์ที่มีรูปถ่ายและจะปรากฏเป็นชุดของรูปขนาดย่อ

เลือกภาพขนาดย่อที่คุณต้องการอัปเดต ในการตัดสินใจว่าจะอัปเดตเป็นแบทช์คุณสามารถตั้งค่าทั้งหมดเป็นวันที่ใหม่หรือคุณสามารถเปลี่ยนรายการแรกและส่วนที่เหลือทั้งหมดจะเลื่อนเวลาตามจำนวนเดียวกัน

ในบานหน้าต่างคุณสมบัติคลิกขวาที่ฟิลด์วันที่กล้องจากนั้นเลือกปรับวันที่และเวลา ... จากเมนูบริบท กล่องโต้ตอบปรับวันที่รูปภาพจะเปิดขึ้นเพื่อแสดงวันที่ปัจจุบันของกล้องสำหรับภาพถ่ายแรก

แก้ไขวันที่และเวลาของกล้องตามที่ต้องการ หากคุณต้องการเปลี่ยน am เป็น pm หรือในทางกลับกันเพียงเลือกส่วน "am" ของเวลาและพิมพ์ "a" หรือ "p" ตามความเหมาะสม ไม่จำเป็นต้องพิมพ์สิ่ง "am" หรือ "pm" ทั้งหมด

มีสองตัวเลือกหากคุณเลือกภาพย่อมากกว่าหนึ่งภาพสำหรับการอัปเดต: "ปรับวันที่ของภาพถ่ายทั้งหมดด้วยจำนวนที่เท่ากัน" หรือ "ตั้งค่าภาพถ่ายทั้งหมดเป็นวันที่และเวลาเดียวกัน" เลือกสิ่งที่เหมาะสม จากนั้นคลิกตกลง

วันที่ EXIF ​​ของรูปภาพที่เลือกทั้งหมดจะได้รับการอัปเดต


ดูคำตอบก่อนหน้านี้โดย @ user28515 ที่แนะนำ Picasa ด้วย; น่าเศร้าที่มันไม่สามารถใช้ได้อีกต่อไป
JohnC

ถึงแม้ว่า Picasa จะไม่ได้รับการพัฒนาโดย Google อีกต่อไปและพวกเขาได้ลบตัวติดตั้งออกจากเว็บไซต์ของตนแล้วยังคงเป็นไปได้ที่จะดาวน์โหลดเวอร์ชันล่าสุด v3.9 Googling "ดาวน์โหลด picasa 3.9" จะให้ความนิยมอย่างมาก หากคุณสงสัยว่ามีการดาวน์โหลดจากเว็บไซต์แบบสุ่มการดาวน์โหลดอย่างเป็นทางการของ Google ยังคงมีให้บริการผ่านทางอินเทอร์เน็ตอาร์ไคว์ฟเวย์แบ็คแมชชีน สำหรับข้อมูลเพิ่มเติมดูที่นี่: sites.google.com/site/picasaresources/Home/Picasa-FAQ/picasa/
......

0

นอกจากนี้Shotwell Photo Managerบน Ubuntu ( ตัวจัดการรูปถ่าย defaul ปัจจุบันในเวอร์ชั่น 13.10) มีเมนูปรับวันที่ / เวลาสำหรับภาพถ่ายที่เลือก เมื่อรวมกับตัวกรองการนำเข้าล่าสุดคุณสามารถปรับรูปถ่ายที่นำเข้าจากกล้องที่มีวันที่และเวลาไม่ถูกต้อง

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.