Beep6581 / RawTherapee

A powerful cross-platform raw photo processing program
https://rawtherapee.com
GNU General Public License v3.0
2.77k stars 313 forks source link

Add CanonModelID for EOS 70D to exif database #2513

Closed Beep6581 closed 9 years ago

Beep6581 commented 9 years ago

Originally reported on Google Code with ID 2530

Add Canon EOS 70D CanonModelID number.

Reported by daniel.horacio on 2014-10-09 22:22:29


Beep6581 commented 9 years ago
Thanks for the patch! I'll commit it soon.

Reported by heckflosse@i-weyrich.de on 2014-10-09 23:40:13

Beep6581 commented 9 years ago
committed to revision 2cd312a0b3d9

Reported by heckflosse@i-weyrich.de on 2014-10-10 11:34:17

Beep6581 commented 9 years ago
Hmm I see many resent models missing, I could help to fill the gaps here as no programming
skills are needed ..

from Dcraw.c
0x269, "EOS-1D X"
0x301, "EOS 650D"
0x302, "EOS 6D"
0x324, "EOS-1D C"
0x326, "EOS 700D"
0x288, "EOS 1100D"
0x327, "EOS 1200D"
0x346, "EOS 100D"
... 
I can find from exiftool the various model names and fill the description i.e. 
0x80000327, "EOS Rebel T5 / 1200D / Kiss X70"

Reported by iliasgiarimis on 2014-10-10 13:03:57

Beep6581 commented 9 years ago
Hi Ilias, that would be great, please do :-)

Reported by heckflosse@i-weyrich.de on 2014-10-10 13:11:01

Beep6581 commented 9 years ago
ΟΚ, .. of course I hope I can also fill the gaps with lensIDs ..:) 

Just help me understand where these attribs are used by RT ??

I mean that I see the canonmodelID's in dcraw.cc then again in canonattribs but with
extended  model description ..

As I understand it each model has a unique ID but different names in various markets
(US = T5, Europe=1200d, Japan=kiss X70) .. 
when the unique ID is defined RT makes use of this
when the unique ID is absent in dcraw.cc RT reads the model name and then I have to
put the multiple names in camconst.json to match with the used data.

What is the role of modelID interpreter in canonattribs ?.

Reported by iliasgiarimis on 2014-10-10 14:29:52

Beep6581 commented 9 years ago
The only place I know where you can see it is in metadata/exif/makernote/canonmodelid
So I don't know whether this information is really important

Reported by heckflosse@i-weyrich.de on 2014-10-10 14:50:21

Beep6581 commented 9 years ago
Just for your information: A rather exhaustive lens ID list is located at http://www.sno.phy.queensu.ca/~phil/exiftool/TagNames/Canon.html
in case it's still needed...

Reported by K.G.Wuensch on 2014-11-06 13:28:38

Beep6581 commented 9 years ago
Yes we could copy all exitool's list in RT's xxxattribs files but the question arises
if these will be compatible with RT which uses exiv2 to parse tags ?.

For example in http://www.sno.phy.queensu.ca/~phil/exiftool/TagNames/Canon.html#LensType
I see some lensesID like
10.1    = Sigma 50mm f/2.8 EX
10.2    = Sigma 28mm f/1.8
10.3    = Sigma 105mm f/2.8 Macro EX
10.4    = Sigma 70mm f/2.8 EX DG Macro EF

while in canonattribs.cc we have
choices.insert(p_t(10, "Canon EF 50mm f/2.5 Macro"));
choices.insert(p_t(10, "Sigma 50mm f/2.8 EX"));
choices.insert(p_t(10, "Sigma 28mm f/1.8"));
choices.insert(p_t(10, "Sigma 105mm f/2.8 Macro EX"));

.x is missing .. which probably drives to erroneous lens identification ..
Can we make use of xxx.x notation ?.

Meanwhile .. I can start copying the exiftool data and if a problem will arise, we
will need a bit of code changes to adapt RT on these lists ..

Ingo, what do you think about this ??  

Reported by iliasgiarimis on 2014-11-06 14:29:17

Beep6581 commented 9 years ago
Ilias, we can not use the xxx.x notation. But there is some code in canonattribs.cc
to detect the lens by focal length etc. For duplicate lens ids it should choose the
correct lens in most cases.

Ingo

Reported by heckflosse@i-weyrich.de on 2014-11-06 15:53:45

Beep6581 commented 9 years ago
ilias if the source and destination of the values to be transferred each uses a certain
fixed format, then I can maybe Bash-script this, saving you work. I'd need to see a
representative example of what the source looks like and what the destination should
look like.

Reported by entertheyoni on 2014-11-06 19:14:03

Beep6581 commented 9 years ago
http://www.imaging-resource.com/PRODS/canon-7d-mark-ii/EXIF/E7D2hSLI00100NR0.HTM

Here we have a failure (same as with exiftool) .. a strange identification as "EF50mm
f/2.5 Compact Macro +LSC"

It must be Sigma 70mm macro because the max aperture is f/2.8, f/2.8 + 1.4X TC would
give f/4.0

Reported by iliasgiarimis on 2014-11-07 02:57:27

Beep6581 commented 9 years ago
#10 DrSlony, I think the format is fixed .. 

http://www.sno.phy.queensu.ca/~phil/exiftool/Image-ExifTool-9.75.tar.gz

You will find in \lib\Image\ExifTool files like Canon.pm - Nikon.pm etc :)

Reported by iliasgiarimis on 2014-11-07 22:39:58

Beep6581 commented 9 years ago
re #11, Ilias:

I didn't have a look at the code, but the max aperture in Exif is 2.8 if I didn't miss
something. 2.8 is closer to 2.5 * 1.4 than to 2.8 * 1.4 and 1.4 * 50 = 70. So why can't
it be the EF50mm f/2.5 ?

Ingo

Reported by heckflosse@i-weyrich.de on 2014-11-07 23:23:15

Beep6581 commented 9 years ago
Sorry I messed calculations. 

It should be 2.5 * 1.4 = 3.5 if we suppose that it's 50/f2.5 + 1.4X TC i.e. 70mm/f3.5
instead of the correct 70mm/f2.8 of the Sigma 70mm macro

f/2.8 vs f/3.5 is a big difference (error) to my eyes. 

We can ask at Imaging Resource what lens they use :)

Reported by iliasgiarimis on 2014-11-08 02:52:50

Beep6581 commented 9 years ago
Ingo, take a look at the last comments in the discussion :)

http://www.imaging-resource.com/news/2014/11/03/canon-7d-mark-ii-sample-gallery-production-model-hits-trails-sample-gallery

Reported by iliasgiarimis on 2014-11-08 13:04:08

Beep6581 commented 9 years ago

I updated all lens makes and models a month ago. I could add new Canon body models to tools/generateLensList but I want to start with a clean issue.