سؤال

هل سمع أحد من قبل عن شيء قد يسهل العمل به XMP البيانات الوصفية في ماتلاب؟

على سبيل المثال، يمكن قراءة بيانات تعريف EXIF ​​ببساطة باستخدام الملف exifread يأمر -

output = exifread(filename);

لقد وجدت هذا الخيط، ولكن يبدو أنه ميت.


أفكر حاليًا في الخيارات التالية:

  1. كتابة ملف MEX باستخدام C++ XMP SDK
  2. استدعاء إجراءات Java باستخدام JAVA XMP SDK

لتلخيص السؤال هو:هل لديك أي فكرة عن كيفية قراءة/كتابة XMP في Matlab؟

هل كانت مفيدة؟

المحلول 2

أنا وجدت الإجابة.أفضل طريقة هي التحميل ExifTool وأي محلل ماتلاب JSON.من الممكن استخراجه من أي تنسيق الملف، بما في ذلك .DNG, .XMP, .JPEG, .TIFF.

الخطوة 1:قم باستخراج المعلومات إلى ملف JSON مؤقت باستخدام

system(['exiftool -struct -j ' fileName '>'  tempFile]);

الخطوة 2:اتصل بالمحلل اللغوي JSON في ملف tempFile
الخطوه 3:لديك البيانات في هيكل Matlab.

نصائح أخرى

XMP هو مجرد XML ، لذا يمكنك استخدام أي مربع أدوات MATLAB XML.مفضلتي الشخصية هي xml_io_tools .


إذا كنت ترغب في استخدام SDK لتجنب الاضطرار إلى تفسير ما تعنيه بتات XML يدويًا ، فمن بين خياريك ، يبدو الخيار Java الأفضل.يُعد استدعاء Java من MATLAB أمرًا مباشرًا ، ويمكنك تجنب متاعببناء الأشياء التي تنطوي عليها MEX.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top