Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
码匠许师傅
Tflite Micro
提交
4b1b9bd4
T
Tflite Micro
项目概览
码匠许师傅
/
Tflite Micro
11 个月 前同步成功
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
Tflite Micro
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
4b1b9bd4
编写于
7月 17, 2021
作者:
T
TFLM-bot
提交者:
GitHub
7月 17, 2021
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Sync from upstream TF. (#291)
上级
c70c70ec
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
13 addition
and
4 deletion
+13
-4
tensorflow/lite/kernels/internal/reference/integer_ops/pooling.h
...low/lite/kernels/internal/reference/integer_ops/pooling.h
+6
-2
tensorflow/lite/kernels/internal/reference/pooling.h
tensorflow/lite/kernels/internal/reference/pooling.h
+6
-2
tensorflow/lite/kernels/kernel_util.cc
tensorflow/lite/kernels/kernel_util.cc
+1
-0
未找到文件。
tensorflow/lite/kernels/internal/reference/integer_ops/pooling.h
浏览文件 @
4b1b9bd4
...
...
@@ -21,7 +21,7 @@ limitations under the License.
namespace
tflite
{
namespace
reference_integer_ops
{
inline
void
AveragePool
(
const
PoolParams
&
params
,
inline
bool
AveragePool
(
const
PoolParams
&
params
,
const
RuntimeShape
&
input_shape
,
const
int8_t
*
input_data
,
const
RuntimeShape
&
output_shape
,
int8_t
*
output_data
)
{
...
...
@@ -66,6 +66,7 @@ inline void AveragePool(const PoolParams& params,
filter_count
++
;
}
}
if
(
filter_count
==
0
)
return
false
;
// Round to the closest integer value.
acc
=
acc
>
0
?
(
acc
+
filter_count
/
2
)
/
filter_count
:
(
acc
-
filter_count
/
2
)
/
filter_count
;
...
...
@@ -77,6 +78,7 @@ inline void AveragePool(const PoolParams& params,
}
}
}
return
true
;
}
inline
void
MaxPool
(
const
PoolParams
&
params
,
const
RuntimeShape
&
input_shape
,
...
...
@@ -136,7 +138,7 @@ inline void MaxPool(const PoolParams& params, const RuntimeShape& input_shape,
}
}
inline
void
AveragePool
(
const
PoolParams
&
params
,
inline
bool
AveragePool
(
const
PoolParams
&
params
,
const
RuntimeShape
&
input_shape
,
const
int16_t
*
input_data
,
const
RuntimeShape
&
output_shape
,
...
...
@@ -182,6 +184,7 @@ inline void AveragePool(const PoolParams& params,
filter_count
++
;
}
}
if
(
filter_count
==
0
)
return
false
;
// Round to the closest integer value.
acc
=
acc
>
0
?
(
acc
+
filter_count
/
2
)
/
filter_count
:
(
acc
-
filter_count
/
2
)
/
filter_count
;
...
...
@@ -193,6 +196,7 @@ inline void AveragePool(const PoolParams& params,
}
}
}
return
true
;
}
inline
void
MaxPool
(
const
PoolParams
&
params
,
const
RuntimeShape
&
input_shape
,
...
...
tensorflow/lite/kernels/internal/reference/pooling.h
浏览文件 @
4b1b9bd4
...
...
@@ -23,7 +23,7 @@ limitations under the License.
namespace
tflite
{
namespace
reference_ops
{
inline
void
AveragePool
(
const
PoolParams
&
params
,
inline
bool
AveragePool
(
const
PoolParams
&
params
,
const
RuntimeShape
&
input_shape
,
const
float
*
input_data
,
const
RuntimeShape
&
output_shape
,
float
*
output_data
)
{
...
...
@@ -66,6 +66,7 @@ inline void AveragePool(const PoolParams& params,
filter_count
++
;
}
}
if
(
filter_count
==
0
)
return
false
;
const
float
average
=
total
/
filter_count
;
output_data
[
Offset
(
output_shape
,
batch
,
out_y
,
out_x
,
channel
)]
=
ActivationFunctionWithMinMax
(
average
,
params
.
float_activation_min
,
...
...
@@ -74,9 +75,10 @@ inline void AveragePool(const PoolParams& params,
}
}
}
return
true
;
}
inline
void
AveragePool
(
const
PoolParams
&
params
,
inline
bool
AveragePool
(
const
PoolParams
&
params
,
const
RuntimeShape
&
input_shape
,
const
uint8_t
*
input_data
,
const
RuntimeShape
&
output_shape
,
...
...
@@ -122,6 +124,7 @@ inline void AveragePool(const PoolParams& params,
filter_count
++
;
}
}
if
(
filter_count
==
0
)
return
false
;
acc
=
(
acc
+
filter_count
/
2
)
/
filter_count
;
acc
=
std
::
max
(
acc
,
params
.
quantized_activation_min
);
acc
=
std
::
min
(
acc
,
params
.
quantized_activation_max
);
...
...
@@ -131,6 +134,7 @@ inline void AveragePool(const PoolParams& params,
}
}
}
return
true
;
}
inline
void
L2Pool
(
const
PoolParams
&
params
,
const
RuntimeShape
&
input_shape
,
...
...
tensorflow/lite/kernels/kernel_util.cc
浏览文件 @
4b1b9bd4
...
...
@@ -119,6 +119,7 @@ TfLiteStatus GetInputSafe(const TfLiteContext* context, const TfLiteNode* node,
TfLiteTensor
*
GetVariableInput
(
TfLiteContext
*
context
,
const
TfLiteNode
*
node
,
int
index
)
{
TfLiteTensor
*
tensor
=
GetMutableInput
(
context
,
node
,
index
);
if
(
tensor
==
nullptr
)
return
nullptr
;
return
tensor
->
is_variable
?
tensor
:
nullptr
;
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录