TensorFlow - (一)

一、使用TensorFlowlite 構(gòu)建iOS自定義版本

  • 由于TensorFlowlite 提供的 cocoapods 版本 支持到iOS9;所以需要使用手動編譯源碼瓮恭,構(gòu)建靜態(tài)包支持iOS8以上系統(tǒng);
  • TensorFlow目前支持swift和OC厦坛,如果想使用直接cococapads集成狰闪;

二辛润、在iOS使用C++ api

  • 使用api 之前 需要你準(zhǔn)備好lite版的model永淌;model訓(xùn)練完成之后轉(zhuǎn)換為lite即可
  • 加載model的類:

class FlatBufferModel {
 public:
  // Builds a model based on a file.
  // Caller retains ownership of `error_reporter` and must ensure its lifetime
  // is longer than the FlatBufferModel instance.
  // Returns a nullptr in case of failure.
  static std::unique_ptr<FlatBufferModel> BuildFromFile(
      const char* filename,
      ErrorReporter* error_reporter = DefaultErrorReporter());
 
  // Builds a model based on a pre-loaded flatbuffer.
  // Caller retains ownership of the buffer and should keep it alive until
  // the returned object is destroyed. Caller also retains ownership of
  // `error_reporter` and must ensure its lifetime is longer than the
  // FlatBufferModel instance.
  // Returns a nullptr in case of failure.
  // NOTE: this does NOT validate the buffer so it should NOT be called on
  // invalid/untrusted input. Use VerifyAndBuildFromBuffer in that case
  static std::unique_ptr<FlatBufferModel> BuildFromBuffer(
      const char* caller_owned_buffer, size_t buffer_size,
      ErrorReporter* error_reporter = DefaultErrorReporter());
}
  • C++ 加載model 的步驟

構(gòu)建FlatBufferModel崎场,并且從構(gòu)建的FlatBufferModel中初始化Interpreter實(shí)例;
可以選擇性地進(jìn)行優(yōu)化Tensor;
設(shè)置Tensor的值遂蛀;
調(diào)用運(yùn)行推理谭跨;
讀取Tensor的輸出值
使用Interpreter對象注意事項(xiàng):
Tensor用整數(shù)值表示,避免使用字符串進(jìn)行比較李滴;
訪問Interpreter避免在多個線程中并發(fā)訪問饺蚊;
Tensor的輸入和輸出內(nèi)存分配使用AllocateTensors() 在重置大小之后進(jìn)行



tflite::FlatBufferModel model(path_to_model);
 
tflite::ops::builtin::BuiltinOpResolver resolver;
std::unique_ptr<tflite::Interpreter> interpreter;
tflite::InterpreterBuilder(*model, resolver)(&interpreter);
 
// Resize input tensors, if desired.
interpreter->AllocateTensors();
 
float* input = interpreter->typed_input_tensor<float>(0);
// Fill `input`.
 
interpreter->Invoke();
 
float* output = interpreter->typed_output_tensor<float>(0);

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市悬嗓,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌裕坊,老刑警劉巖包竹,帶你破解...
    沈念sama閱讀 222,183評論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異籍凝,居然都是意外死亡周瞎,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,850評論 3 399
  • 文/潘曉璐 我一進(jìn)店門饵蒂,熙熙樓的掌柜王于貴愁眉苦臉地迎上來声诸,“玉大人,你說我怎么就攤上這事退盯”宋冢” “怎么了泻肯?”我有些...
    開封第一講書人閱讀 168,766評論 0 361
  • 文/不壞的土叔 我叫張陵,是天一觀的道長慰照。 經(jīng)常有香客問我灶挟,道長,這世上最難降的妖魔是什么毒租? 我笑而不...
    開封第一講書人閱讀 59,854評論 1 299
  • 正文 為了忘掉前任稚铣,我火速辦了婚禮,結(jié)果婚禮上墅垮,老公的妹妹穿的比我還像新娘惕医。我一直安慰自己,他們只是感情好算色,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,871評論 6 398
  • 文/花漫 我一把揭開白布抬伺。 她就那樣靜靜地躺著,像睡著了一般剃允。 火紅的嫁衣襯著肌膚如雪沛简。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,457評論 1 311
  • 那天斥废,我揣著相機(jī)與錄音椒楣,去河邊找鬼。 笑死牡肉,一個胖子當(dāng)著我的面吹牛捧灰,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播统锤,決...
    沈念sama閱讀 40,999評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼毛俏,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了饲窿?” 一聲冷哼從身側(cè)響起煌寇,我...
    開封第一講書人閱讀 39,914評論 0 277
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎逾雄,沒想到半個月后阀溶,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,465評論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡鸦泳,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,543評論 3 342
  • 正文 我和宋清朗相戀三年银锻,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片做鹰。...
    茶點(diǎn)故事閱讀 40,675評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡击纬,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出钾麸,到底是詐尸還是另有隱情更振,我是刑警寧澤炕桨,帶...
    沈念sama閱讀 36,354評論 5 351
  • 正文 年R本政府宣布,位于F島的核電站殃饿,受9級特大地震影響谋作,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜乎芳,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,029評論 3 335
  • 文/蒙蒙 一遵蚜、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧奈惑,春花似錦吭净、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,514評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至原在,卻和暖如春友扰,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背庶柿。 一陣腳步聲響...
    開封第一講書人閱讀 33,616評論 1 274
  • 我被黑心中介騙來泰國打工村怪, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人浮庐。 一個月前我還...
    沈念sama閱讀 49,091評論 3 378
  • 正文 我出身青樓甚负,卻偏偏與公主長得像,于是被迫代替她去往敵國和親审残。 傳聞我的和親對象是個殘疾皇子梭域,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,685評論 2 360

推薦閱讀更多精彩內(nèi)容