This could be done with lisp (i think). My method uses the "Windows Image Aquisition" object so would only work with windows. You would also need to dig further into cracking open to Ivector Object.
The "Model tie point" is 33922 but again it is an Ivector object and you will need to work out how to extract the coordinates.
BTW 34737 is the coordinate system and 33550 is the pixel scale.
Here is the info I get
(("ImageWidth" . 1645)
("ImageHeight" . 4096)
("BitsPerSample" . #<VLA-OBJECT IVector 00000215fc6b81c0>)
("Compression" . 7)
("PhotometricInterp" . 2)
("SamplesPerPixel" . 3)
("PlanarConfig" . 1)
("TileWidth" . 256)
("TileLength" . 256)
("TileOffset" . #<VLA-OBJECT IVector 00000215fc6b8a10>)
("TileByteCounts" . #<VLA-OBJECT IVector 00000215fc6b8af0>)
("SampleFormat" . #<VLA-OBJECT IVector 00000215fc6b8d20>)
("347" . #<VLA-OBJECT IVector 00000215fc6b8ee0>)
("33550" . #<VLA-OBJECT IVector 00000215fc6b8c40>)
("33922" . #<VLA-OBJECT IVector 00000215fc6b8460>)
("34735" . #<VLA-OBJECT IVector 00000215fc6b8e00>)
("34736" . #<VLA-OBJECT IVector 00000215fc6b8150>)
("34737" . "SIRGAS-ROU98|SIRGAS-ROU98 / UTM zone 22S|"))
(defun exifdata
(file
/ idata
) ;;/ err idata iprop imgObj )
) ;_ end of and
) ;_ end of lambda
) ;_ end of function
) ;_ end of vl-catch-all-apply
) ;_ end of setq
;;(dumpall iprop)
(setq idata
(getall iprop
)) ;;(dumpall idata)
) ;_ end of progn
) ;_ end of if
;_ end of if
) ;_ end of progn
) ;_ end of if
(rel)
idata
) ;_ end of defun
(defun getall
(collection
/ err x valuelist name prop
) ) ;_ end of if
;;(vlax-dump-object x T)
;_ end of setq
) ;_ end of vlax-for
;;(null (vl-catch-all-error-p err))
) ;_ end of if
) ;_ end of defun
) ;_ end of if
) ;_ end of foreach
)