ابرداده را از TFLite Model FlatBuffer بارگیری می کند.
TFLite Model FlatBuffer را می توان با استفاده از فایل طرحواره مدل TFLite تولید کرد.
برخی از مدل ها حاوی یک بافر مسطح فراداده TFLite هستند که اطلاعات بیشتری در مورد آنچه مدل انجام می دهد و نحوه تفسیر مدل را ثبت می کند. TFLite Metadata Flatbuffer را می توان با استفاده از فایل طرحواره TFLite Metadata ایجاد کرد.
در یک مدل FlatBuffer بدون ابرداده TFLite مجاز است. با این حال، فراخوانی روش هایی که از متادیتا TFLite خوانده می شوند، باعث خطاهای زمان اجرا می شود.
به طور مشابه، اجازه عبور در یک FlatBuffer مدل بدون فایل های مرتبط وجود دارد. با این حال، فراخوانی روش هایی که فایل های مرتبط را می خوانند باعث خطاهای زمان اجرا می شود.
اگرچه مدل TFLite FlatBuffer از چندین زیرگراف پشتیبانی می کند، TFLite Interpreter تاکنون تنها از یک زیرگراف پشتیبانی می کند. برای اطلاعات بیشتر به دستورالعمل نحوه تعیین زیرگراف در هنگام تبدیل مراجعه کنید. بنابراین، MetadataExtractor
شاخص زیرگراف را به عنوان ورودی در روش های خود حذف می کند.
کلاس های تو در تو
کلاس | MetadataExtractor.QuantizationParams | پارامترهای کوانتیزاسیون که با جدول QuantizationParameters در فایل طرحواره مدل TFLite مطابقت دارد. |
سازندگان عمومی
روش های عمومی
جریان ورودی | |
< رشته > را تنظیم کنید | getAssociatedFileNames () نام فایل فایل های مرتبط را دریافت می کند. |
بین المللی | getInputTensorCount () تعداد تانسورهای ورودی در مدل را بدست می آورد. |
Metadata Tensor | getInputTensorMetadata (int inputIndex) فراداده تانسور ورودی مشخص شده توسط inputIndex را دریافت می کند. |
MetadataExtractor.QuantizationParams | getInputTensorQuantizationParams (int inputIndex) پارامترهای کوانتیزاسیون را برای تانسور ورودی مشخص شده توسط inputIndex دریافت می کند. |
بین المللی[] | getInputTensorShape (inputIndex) شکل تانسور ورودی را با inputIndex می گیرد. |
بایت | getInputTensorType (int inputIndex) ERROR(/TensorType) تانسور ورودی را با inputIndex دریافت می کند. |
مدل Metadata | getModelMetadata () کنترل کننده ریشه برای فراداده مدل را دریافت می کند. |
بین المللی | getOutputTensorCount () تعداد تانسورهای خروجی در مدل را بدست می آورد. |
Metadata Tensor | getOutputTensorMetadata (int outputIndex) فراداده تانسور خروجی مشخص شده توسط outputIndex را دریافت می کند. |
MetadataExtractor.QuantizationParams | getOutputTensorQuantizationParams (int outputIndex) پارامترهای کوانتیزاسیون تانسور خروجی مشخص شده توسط outputIndex را دریافت می کند. |
بین المللی[] | getOutputTensorShape (int outputIndex) شکل تانسور خروجی را با outputIndex می گیرد. |
بایت | getOutputTensorType (int outputIndex) ERROR(/TensorType) تانسور خروجی را با outputIndex دریافت می کند. |
بولی | hasMetadata () اگر مدل دارای ابرداده باشد، true برمیگرداند. |
بولی نهایی | isMinimumParserVersionSatisfied () اگر حداقل نسخه تجزیه کننده مورد نیاز بافر مسطح فراداده مفروض مقدم یا برابر با نسخه تجزیه کننده فراداده ای باشد که این کتابخانه MetadataExtractor بر آن تکیه دارد، true برمی گردد. |
روش های ارثی
سازندگان عمومی
استخراج کننده فراداده عمومی (بافر ByteBuffer )
یک MetadataExtractor
با FlatBuffer مدل TFLite ایجاد می کند.
مولفه های
بافر | مدل TFLite FlatBuffer |
---|
پرتاب می کند
IllegalArgumentException | اگر تعداد تانسورهای ورودی یا خروجی در مدل با فراداده مطابقت نداشته باشد |
---|---|
IOException | اگر هنگام خواندن مدل به صورت فایل Zip خطایی رخ دهد |
روش های عمومی
ورودی عمومی getAssociatedFile (نام فایل رشته )
فایل مرتبط بسته بندی شده را با fileName
مشخص شده دریافت می کند.
مولفه های
نام فایل | نام فایل مرتبط |
---|
برمی گرداند
- جریان ورودی خام حاوی فایل مشخص شده است
پرتاب می کند
IllegalStateException | اگر مدل یک فایل فشرده نیست |
---|---|
IllegalArgumentException | اگر فایل مشخص شده در مدل وجود نداشته باشد |
مجموعه عمومی < رشته > getAssociatedFileNames ()
نام فایل فایل های مرتبط را دریافت می کند.
برمی گرداند
- نام فایل های فایل های مرتبط
پرتاب می کند
IllegalStateException | اگر مدل یک فایل فشرده نیست |
---|
عمومی int getInputTensorCount ()
تعداد تانسورهای ورودی در مدل را بدست می آورد.
عمومی TensorMetadata getInputTensorMetadata (int inputIndex)
فراداده تانسور ورودی مشخص شده توسط inputIndex
را دریافت می کند.
مولفه های
InputIndex | شاخص تانسور ورودی مورد نظر |
---|
پرتاب می کند
IllegalStateException | اگر این مدل حاوی فراداده مدل نباشد |
---|
عمومی MetadataExtractor.QuantizationParams getInputTensorQuantizationParams (int inputIndex)
پارامترهای کوانتیزاسیون را برای تانسور ورودی مشخص شده توسط inputIndex
دریافت می کند.
مولفه های
InputIndex | شاخص تانسور ورودی مورد نظر |
---|
عمومی int[] getInputTensorShape (int inputIndex)
شکل تانسور ورودی را با inputIndex
می گیرد.
مولفه های
InputIndex | شاخص تانسور ورودی مورد نظر |
---|
بایت عمومی getInputTensorType (int inputIndex)
ERROR(/TensorType)
تانسور ورودی را با inputIndex
دریافت می کند.
مولفه های
InputIndex | شاخص تانسور ورودی مورد نظر |
---|
عمومی ModelMetadata getModelMetadata ()
کنترل کننده ریشه برای فراداده مدل را دریافت می کند.
پرتاب می کند
IllegalStateException | اگر این مدل حاوی فراداده مدل نباشد |
---|
عمومی int getOutputTensorCount ()
تعداد تانسورهای خروجی در مدل را بدست می آورد.
عمومی TensorMetadata getOutputTensorMetadata (int outputIndex)
فراداده تانسور خروجی مشخص شده توسط outputIndex
را دریافت می کند.
مولفه های
OutputIndex | شاخص تانسور خروجی مورد نظر |
---|
پرتاب می کند
IllegalStateException | اگر این مدل حاوی فراداده مدل نباشد |
---|
عمومی MetadataExtractor.QuantizationParams getOutputTensorQuantizationParams (int outputIndex)
پارامترهای کوانتیزاسیون تانسور خروجی مشخص شده توسط outputIndex
را دریافت می کند.
مولفه های
OutputIndex | شاخص تانسور خروجی مورد نظر |
---|
عمومی int[] getOutputTensorShape (int outputIndex)
شکل تانسور خروجی را با outputIndex
می گیرد.
مولفه های
OutputIndex | شاخص تانسور خروجی مورد نظر |
---|
بایت عمومی getOutputTensorType (int outputIndex)
ERROR(/TensorType)
تانسور خروجی را با outputIndex
دریافت می کند.
مولفه های
OutputIndex | شاخص تانسور خروجی مورد نظر |
---|
بولین عمومی hasMetadata ()
اگر مدل دارای ابرداده باشد، true
برمیگرداند. در غیر این صورت، false
برمی گرداند.
بولین نهایی عمومی isMinimumParserVersionSatisfied ()
اگر حداقل نسخه تجزیه کننده مورد نیاز بافر مسطح فراداده مفروض مقدم یا برابر با نسخه تجزیه کننده فراداده ای باشد که این کتابخانه MetadataExtractor بر آن تکیه دارد، true
برمی گردد. تمام فیلدهای موجود در فراداده را می توان به درستی با این کتابخانه استخراج کننده فراداده در این مورد تجزیه کرد. در غیر این صورت، false
برمی گردد.
به عنوان مثال، فرض کنید نسخه تجزیه کننده ابرداده اصلی 1.14.1
است،
- اگر حداقل نسخه تجزیه کننده مورد نیاز یکسان یا قدیمی تر باشد، مانند
1.14.1
یا1.14.0
،true
را برمی گرداند. نسخه تهی مقدم بر همه نسخه های عددی است، زیرا برخی از بافرهای مسطح فراداده قبل از اولین نسخه نسخه تولید می شوند. - اگر حداقل نسخه تجزیه کننده مورد نیاز جدیدتر باشد، مانند
1.14.2
،false
را برمی گرداند.