2000+ Photos Import = Metadata

Started by owner, July 26, 2011, 01:06:57 AM

Previous topic - Next topic

owner

Hello,

Yes, thank you very much for all the replies.

I have now found a way to do this - through Adobe Lightroom3

I can add my image description/caption and after "saving meta details" it will automatically be written to the image. Awesome  ;)
Thanks again for your help.

Phil Harvey

Quote from: owner on July 29, 2011, 02:09:56 PM
I tried that exactly how you said, however it came back saying "No Source File".

This problem is simple to solve.  Take note of the SourceFile mentioned in the error message, and be sure this exists in the first column of the .csv file exactly as printed in the message.

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

owner

Hi Phil,

Thanks for the reply. I am having trouble using your program.

But I would like to use it ~ if it can write all my captions from a .csv file to each image and save the image description.

I can do this via LR, but it is taking forever!

I have about 10 folders with different photos - and somehow can't get the image description written to the specific image. Not sure what I am doing incorrectly, but it just won't write.

I have the 'sourcefile' / image file saved to out.csv, but now the image description for that sourcefile isn't been written.

All the fields are correct, where it comes back with "No Source File" - I have checked and everything is 'in' the .csv file fine.

The difficulty now appears to - how do I write the image description to each image automatically?

Any other help greatly appreciated. I would love to continue with your program; if it will do this.

Phil Harvey

Solving the "No Source File" problem is one thing (and should be easy -- you must be just missing some little detail, but I can't help with the details if you won't post the exact .csv file and exiftool output).

But automatically writing the image description is another.  Where do you plan to get this information from?  To work automatically, the information must already be stored in an electronic form somewhere.  If in a database or spreadsheet, then you just have to work out how to export the proper format .csv file for exiftool.  If the information is contained in the file name or some other metadata in the file, then you can use exiftool to move this information to the necessary location.  But if neither of these is the case, I don't see any way to automatically tag the images anyway, so we would be wasting our time to get this working.

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

owner

Hello

I am willimg to work with this program, if you can ensure the image descriptions from thr .csv file will be automatically applied to the images.

Yes, sorry I missed that...i can send you csv and any error messages.

Obviously I am not doing it correctly.

Once I have the csv file ready with both source file and discription, what code do I use to copy image description to the images.

Please continue to help. I can send u file in few hours, and lets see if we can get this done today.

Phil Harvey

Sorry for the delay.  I am on vacation now so I won't be sitting at a computer all day like I usually do.

Your .csv file is the wrong format.  The first line must be (exactly):

SourceFile,ImageDescription

There must be a comma between the tag names, no spaces, and a newline at the end.

As I said, use the "exiftool -csv -imagedescription -f -r DIR" command to see the exact format, where DIR is the name of a directory containing the images.

But I am just starting to repeating myself.  Try reading what I have posted so far and following my advice exactly.  You should be able to get this working.

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

owner

#21
Hi Phil,

Thank you so much for your continued help; I really hope we can get this work. Please try and respond asap.

I have ensured the .csv file is 'set up' correctly with "SourceFile,ImageDescription" (no spaces or tabs).

Next, I use your command to "write image descriptions to the images" = but NOTHING is written. I view image properties to see NO captions.
This is the command I used: exiftool -csv -ImageDescription -f -r c:\Photos

I next get multiple WARNING messages:
Warning [minor] Adjusted makernotes base 4220 c:\photos\gallery\alberta\0001.jpg

   49 directories scanned
1948 image files read


Then it shows me multiple lines like this c:\photos\gallery\scotland\004.jpg

How do I fix this warning, and will the image description be written to the images?

I have a total of 1948 images, but only 876 captions.

Can your program, write the 876 captions to the images; and just ignore the other images in the folders?

Please help - what do I do now?

Regards.



Phil Harvey

The command you gave is for generating the .csv file.  To modify images from data in the .csv file, use this command:

exiftool -csv=out.csv -r DIR

This command assumes that your .csv file is named "out.csv" and exists in the current directory when you run exiftool.  To determine your current directory name, type "pwd" then press RETURN at the command prompt.

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

owner

Thank you Phil.

I do appreciate your help with this.

I tried your command; only to receive Errors - and such no captions were written to any image.

The error says "No source file c:\photos\gallery\scotland\Img_0591.jpg" per .csv file

BUT I checked both the .csv file to see the source file & image there - and then checked the image in that folder; to find the image there. So not sure why the program came back with error.

I think what I will do now, is a) find another way to do this OR  b) use adobe Lightroom 3 and "cut & paste" every caption in, then save it to images that way.

Unless, of course you have any other suggestions? Do you know of any other program that would do this for me? (take a .csv file with photo captions and write them to images?)

Thanks again.

Phil Harvey

Quote from: owner on July 31, 2011, 11:38:47 PM
The error says "No source file c:\photos\gallery\scotland\Img_0591.jpg" per .csv file

If that is the exact message printed by exiftool, then it will work if there is a line exactly like this in the .csv file:

c:\photos\gallery\scotland\Img_0591.jpg,some caption

There must be no extra spaces, and the .csv file must be plain text.  Use the command "type out.csv" at the command line to list the contents of the .csv file to be sure it is the correct format.

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

owner

Hi Phil,

Thank you for your help. I have tried everything you said, more than once - and I still can't get this program to write my captions to the images.

I think now I am ready to give up on it, and will revert to 'cut & paste' through adobe lightroom3.

I wonder if you would be willing to "do this for me" ?

I can send you my csv file so you can esure it is in the right format, and images if you need them.

If not, then not to worry and I will work with Lightroom from now on. Also, would you know of any other programs that may do this?

Phil Harvey

#26
Send me your .csv file and the "out.csv" file from this command:

exiftool -f -r -csv -imagedescription DIR > out.csv

(with DIR replaced by your directory), and I'll sort this out.

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

owner

Hi Phil,

Thanks so much. I will PM you, but not sure how to attach a file? Can you give me your email address? Please PM it to me.

Phil Harvey

My mail is philharvey66 at gmail.com
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

owner

Thanks very much Phil ~ I have emailed you.