برای شروع کار با TensorFlow Lite در iOS، توصیه می کنیم مثال زیر را بررسی کنید:
برای توضیح کد منبع، باید طبقه بندی تصاویر TensorFlow Lite iOS را نیز بخوانید.
این برنامه نمونه از طبقهبندی تصویر برای طبقهبندی مداوم هر آنچه از دوربین عقب دستگاه میبیند استفاده میکند و محتملترین طبقهبندیها را نمایش میدهد. این به کاربر این امکان را می دهد که بین یک مدل ممیز شناور یا مدل کوانتیزه انتخاب کند و تعداد رشته ها را برای انجام استنتاج انتخاب کند.
TensorFlow Lite را به پروژه Swift یا Objective-C خود اضافه کنید
TensorFlow Lite کتابخانه های بومی iOS را ارائه می دهد که با Swift و Objective-C نوشته شده اند. شروع به نوشتن کد iOS خود با استفاده از مثال طبقه بندی تصاویر سوئیفت به عنوان نقطه شروع کنید.
بخش های زیر نحوه اضافه کردن TensorFlow Lite Swift یا Objective-C را به پروژه خود نشان می دهد:
توسعه دهندگان CocoaPods
در Podfile
خود، غلاف TensorFlow Lite را اضافه کنید. سپس، pod install
اجرا کنید.
سریع
use_frameworks!
pod 'TensorFlowLiteSwift'
هدف-C
pod 'TensorFlowLiteObjC'
مشخص کردن نسخه ها
نسخههای پایدار و نسخههای شبانه برای هر دو دسته TensorFlowLiteSwift
و TensorFlowLiteObjC
در دسترس هستند. اگر محدودیت نسخه را مانند مثال های بالا مشخص نکنید، CocoaPods آخرین نسخه پایدار را به طور پیش فرض ارائه می کند.
همچنین می توانید یک محدودیت نسخه را مشخص کنید. به عنوان مثال، اگر می خواهید به نسخه 2.10.0 وابسته باشید، می توانید وابستگی را به صورت زیر بنویسید:
pod 'TensorFlowLiteSwift', '~> 2.10.0'
این اطمینان حاصل می کند که آخرین نسخه موجود 2.xy از TensorFlowLiteSwift
pod در برنامه شما استفاده می شود. از طرف دیگر، اگر میخواهید به ساختهای شبانه وابسته باشید، میتوانید بنویسید:
pod 'TensorFlowLiteSwift', '~> 0.0.1-nightly'
از نسخه 2.4.0 و آخرین نسخه های شبانه، به طور پیش فرض نمایندگان GPU و Core ML از پاد حذف می شوند تا اندازه باینری کاهش یابد. شما می توانید آنها را با تعیین subspec اضافه کنید:
pod 'TensorFlowLiteSwift', '~> 0.0.1-nightly', :subspecs => ['CoreML', 'Metal']
این به شما امکان می دهد از آخرین ویژگی های اضافه شده به TensorFlow Lite استفاده کنید. توجه داشته باشید که وقتی برای اولین بار دستور pod install
را اجرا میکنید، فایل Podfile.lock
ایجاد میشود، نسخه کتابخانه شبانه در نسخه تاریخ فعلی قفل میشود. اگر می خواهید کتابخانه شبانه را به جدیدتر به روز کنید، باید دستور pod update
اجرا کنید.
برای اطلاعات بیشتر در مورد روشهای مختلف تعیین محدودیتهای نسخه، به تعیین نسخههای غلاف مراجعه کنید.
توسعه دهندگان Bazel
در فایل BUILD
خود، وابستگی TensorFlowLite
را به هدف خود اضافه کنید.
سریع
swift_library(
deps = [
"//tensorflow/lite/swift:TensorFlowLite",
],
)
هدف-C
objc_library(
deps = [
"//tensorflow/lite/objc:TensorFlowLite",
],
)
C/C++ API
همچنین می توانید از C API یا C++ API استفاده کنید
# Using C API directly
objc_library(
deps = [
"//tensorflow/lite/c:c_api",
],
)
# Using C++ API directly
objc_library(
deps = [
"//tensorflow/lite:framework",
],
)
وارد کردن کتابخانه
برای فایلهای Swift، ماژول TensorFlow Lite را وارد کنید:
import TensorFlowLite
برای فایلهای Objective-C، هدر چتر را وارد کنید:
#import "TFLTensorFlowLite.h"
یا اگر در پروژه Xcode خود CLANG_ENABLE_MODULES = YES
تنظیم کنید، ماژول:
@import TFLTensorFlowLite;