Có phần mềm nào sẽ thiết lập Ngày EXIF ​​dựa trên ngày sửa đổi của tệp không?


20

Tôi đã sử dụng Exifer trong nhiều năm để hẹn hò lại và đặt tên lại cho ảnh của mình dựa trên ngày EXIF ​​từ (các) máy ảnh.

Bây giờ tôi đã bắt đầu sử dụng một số ứng dụng máy ảnh thay thế có sẵn trên iPhone (cụ thể là Plastiq CameraHipstamatic ) nhưng chúng không lưu bất kỳ thông tin EXIF ​​nào trong hình ảnh.

Những gì tôi muốn làm sau đó là để chèn Date Digitised, Date TakenDate ModifiedEXIF giá trị dựa trên các tập tin JPG của Modified Date(đó là chính xác đến thời điểm chụp ảnh) cũng như đối cũng đặt Makeđể AppleModelđể iPhone 3GS(mặc dù quá trình này sẽ áp dụng đối với bất kỳ hình ảnh JPG không có dữ liệu EXIF, bất kể nguồn nào)

Tôi đã xem Exifer , IrfanView , ExifTool , Picasa và những người khác và họ không thể đặt ngày ở tất cả hoặc chỉ có thể đặt chúng thành một ngày / giờ cụ thể.

Vì vậy, có phần mềm nào khả dụng sẽ tự động đặt Ngày EXIF ​​dựa trên thuộc tính ngày Sửa đổi của tệp không?

Hoặc, có một số chuyển đổi trong ExifTool mà tôi đã bỏ lỡ có thể?

Tôi muốn có thể làm điều này như một lô trên một thư mục hình ảnh.


FWIW, Hipstamatic hiện bao gồm dữ liệu EXIF. Tạo một yêu cầu tính năng cho Plastiq Camera để làm điều tương tự.
mattdm

@mattdm - Đúng, họ đã thực hiện một vài phiên bản bây giờ. Làm cho mọi thứ dễ dàng hơn nhiều!
Shevek

Câu trả lời:


26

Tôi nghĩ bạn có thể làm điều đó với ExifTool:

exiftool -v "-FileModifyDate>DateTimeOriginal" *

Đã thử trên một số bản sao của jpeg và nó dường như đã hoạt động.


4
Trên thực tế exiftool -v "-FileModifyDate>AllDates" *, cả 3 ngày
Shevek

@Shevek - Bạn khá hoan nghênh!
John Cavan

Tuyệt vời, cảm ơn rất nhiều! Tôi cần điều này để làm cho công cụ mogrify ImageMagicks in dấu thời gian trên ảnh khi không có ngày EXIF ​​bên trong.
leberwurstsaft

3

Ngoài exiftool mạnh hơn nhiều, người ta cũng có thể sử dụng jhead cho những thứ đơn giản như thế này.

jhead -dsft *.jpg

Nó cũng sẽ xử lý việc đổi tên dựa trên thời gian, vì vậy bạn có thể bỏ qua exifer hoàn toàn.

Trong trường hợp các tệp của bạn không có EXIF ​​hiện có, bạn sẽ cần phải tạo nó, điều mà jhead cũng có thể làm, trong cùng một lượt với việc thêm -mkexifcờ:

jhead -mkexif -dsft *.jpg

Tất nhiên, nếu tập tin của bạn không có tiêu đề EXIF đã có, không sử dụng -mkexif. Phần lệnh đó thực hiện những gì nó nói và tạo ra một EXIF ​​trống hoàn toàn mới từ đầu, khi cần cho các tệp được tạo bởi các ứng dụng không phải là chính chúng, như câu hỏi này yêu cầu. Nếu bạn chỉ muốn thay đổi thời gian mà không tạo EXIF, hãy bỏ cờ đó.



2

Điều này có thể được thực hiện với một tập lệnh Python, dọc theo dòng:

import sys, os, datetime
filename = sys.argv[1]
ts = datetime.datetime.fromtimestamp(os.stat(filename).st_mtime)
ts_string = ts.strftime('%Y-%m-%d %H:%M:%S')
os.system('some_exif_tool -ts "%s" "%s"' % (ts_string, filename))

(Tôi biết đây không phải là câu trả lời thân thiện với nhiếp ảnh gia, hy vọng nó có thể hữu ích cho ai đó.)


1

Bạn cũng có thể sử dụng ACDSee 14 để sắp xếp lại các tệp theo nhiều, nhiều cách khác nhau, ở chế độ đơn hoặc ở chế độ hàng loạt. Một chương trình tuyệt vời, nhưng có thể quá mức cho vấn đề của Poster gốc. Đã cải thiện rất nhiều từ ACDSee 7 từ nhiều năm trước!

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.