Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/61.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 在iOS上实现TensorFlow注意力OCR_C++_Ios_Tensorflow_Ocr_Tensorflow Serving - Fatal编程技术网

C++ 在iOS上实现TensorFlow注意力OCR

C++ 在iOS上实现TensorFlow注意力OCR,c++,ios,tensorflow,ocr,tensorflow-serving,C++,Ios,Tensorflow,Ocr,Tensorflow Serving,我已经成功地训练了(使用Inception V3权重作为初始化)这里描述的注意力OCR模型:并将生成的检查点文件冻结到图形中。如何在iOS?上使用C++ API实现这个网络? 提前感谢。根据其他人的建议,您可以使用一些现有的iOS演示(,)作为起点,但请密切注意以下细节: 确保使用正确的工具“冻结”模型。是Tensorflow模型的通用序列化格式 模型导出脚本可以而且通常执行某种输入规范化。请注意,Model.create_base函数需要一个tf.float32形状张量[batch_size,

我已经成功地训练了(使用Inception V3权重作为初始化)这里描述的注意力OCR模型:并将生成的检查点文件冻结到图形中。如何在iOS?

上使用C++ API实现这个网络?
提前感谢。

根据其他人的建议,您可以使用一些现有的iOS演示(,)作为起点,但请密切注意以下细节:

  • 确保使用正确的工具“冻结”模型。是Tensorflow模型的通用序列化格式
  • 模型导出脚本可以而且通常执行某种输入规范化。请注意,Model.create_base函数需要一个tf.float32形状张量[batch_size,height,width,channels],其值规格化为。如果将图像规格化作为TensorFlow计算图的一部分,请确保以非规格化方式传递图像,反之亦然
  • 要获取输入/输出张量的名称,只需打印它们,例如,在导出脚本中的某个位置:

    data_images = tf.placeholder(dtype=tf.float32, shape=[batch_size, height, width, channels], name='normalized_input_images')
    endpoints = model.create_base(data_images, labels_one_hot=None)
    print(data_images, endpoints.predicted_chars, endpoints.predicted_scores)
    

  • 根据其他人的建议,您可以使用一些现有的iOS演示(,)作为起点,但请密切注意以下细节:

  • 确保使用正确的工具“冻结”模型。是Tensorflow模型的通用序列化格式
  • 模型导出脚本可以而且通常执行某种输入规范化。请注意,Model.create_base函数需要一个tf.float32形状张量[batch_size,height,width,channels],其值规格化为。如果将图像规格化作为TensorFlow计算图的一部分,请确保以非规格化方式传递图像,反之亦然
  • 要获取输入/输出张量的名称,只需打印它们,例如,在导出脚本中的某个位置:

    data_images = tf.placeholder(dtype=tf.float32, shape=[batch_size, height, width, channels], name='normalized_input_images')
    endpoints = model.create_base(data_images, labels_one_hot=None)
    print(data_images, endpoints.predicted_chars, endpoints.predicted_scores)
    

  • 说明书的起点好吗?说明书的起点好吗?谢谢你的回答,亚历山大。然而,对于如何将输入图像输入网络,我有点困惑。我看到“split”节点接受一个大小为32x150x600x3的张量,然后将其分为四个张量发送到Inception特性提取器。假设我有一个输入图像,我应该使用哪个节点作为输入?此外,如何使用单个输入图像处理32的批大小?如果您有单个视图,请指定num_views=1作为模型构造函数的参数。因此,您仍然可以使用答案中的代码片段,并将图像输入数据图像张量(print语句将显示名称)。但请注意,您需要使用与培训中相同数量的视图。如果您使用了4个视图,并且需要使用单个视图进行测试,则需要使用随机噪声填充单个1500x150视图,与训练数据类似。感谢您的回复,Alexander。然而,对于如何将输入图像输入网络,我有点困惑。我看到“split”节点接受一个大小为32x150x600x3的张量,然后将其分为四个张量发送到Inception特性提取器。假设我有一个输入图像,我应该使用哪个节点作为输入?此外,如何使用单个输入图像处理32的批大小?如果您有单个视图,请指定num_views=1作为模型构造函数的参数。因此,您仍然可以使用答案中的代码片段,并将图像输入数据图像张量(print语句将显示名称)。但请注意,您需要使用与培训中相同数量的视图。如果您使用了4个视图,并且需要使用单个视图进行测试,则需要使用随机噪声填充单个1500x150视图,这与训练数据类似。