Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
weixin_41840029
PaddleOCR
提交
8235eece
P
PaddleOCR
项目概览
weixin_41840029
/
PaddleOCR
与 Fork 源项目一致
Fork自
PaddlePaddle / PaddleOCR
通知
1
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
P
PaddleOCR
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
未验证
提交
8235eece
编写于
6月 08, 2021
作者:
Z
zhoujun
提交者:
GitHub
6月 08, 2021
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Speed up pixel assignment (#3052)
上级
a846a581
变更
2
显示空白变更内容
内联
并排
Showing
2 changed file
with
22 addition
and
19 deletion
+22
-19
deploy/android_demo/app/src/main/java/com/baidu/paddle/lite/demo/ocr/MainActivity.java
...ain/java/com/baidu/paddle/lite/demo/ocr/MainActivity.java
+6
-2
deploy/android_demo/app/src/main/java/com/baidu/paddle/lite/demo/ocr/Predictor.java
...c/main/java/com/baidu/paddle/lite/demo/ocr/Predictor.java
+16
-17
未找到文件。
deploy/android_demo/app/src/main/java/com/baidu/paddle/lite/demo/ocr/MainActivity.java
浏览文件 @
8235eece
...
@@ -465,9 +465,13 @@ public class MainActivity extends AppCompatActivity {
...
@@ -465,9 +465,13 @@ public class MainActivity extends AppCompatActivity {
}
}
public
void
btn_load_model_click
(
View
view
)
{
public
void
btn_load_model_click
(
View
view
)
{
if
(
predictor
.
isLoaded
()){
tvStatus
.
setText
(
"STATUS: model has been loaded"
);
}
else
{
tvStatus
.
setText
(
"STATUS: load model ......"
);
tvStatus
.
setText
(
"STATUS: load model ......"
);
loadModel
();
loadModel
();
}
}
}
public
void
btn_run_model_click
(
View
view
)
{
public
void
btn_run_model_click
(
View
view
)
{
Bitmap
image
=((
BitmapDrawable
)
ivInputImage
.
getDrawable
()).
getBitmap
();
Bitmap
image
=((
BitmapDrawable
)
ivInputImage
.
getDrawable
()).
getBitmap
();
...
...
deploy/android_demo/app/src/main/java/com/baidu/paddle/lite/demo/ocr/Predictor.java
浏览文件 @
8235eece
...
@@ -194,26 +194,25 @@ public class Predictor {
...
@@ -194,26 +194,25 @@ public class Predictor {
"supported!"
);
"supported!"
);
return
false
;
return
false
;
}
}
int
[]
channelStride
=
new
int
[]{
width
*
height
,
width
*
height
*
2
};
int
[]
channelStride
=
new
int
[]{
width
*
height
,
width
*
height
*
2
};
int
p
=
scaleImage
.
getPixel
(
scaleImage
.
getWidth
()
-
1
,
scaleImage
.
getHeight
()
-
1
)
;
int
[]
pixels
=
new
int
[
width
*
height
]
;
for
(
int
y
=
0
;
y
<
height
;
y
++)
{
scaleImage
.
getPixels
(
pixels
,
0
,
scaleImage
.
getWidth
(),
0
,
0
,
scaleImage
.
getWidth
(),
scaleImage
.
getHeight
());
for
(
int
x
=
0
;
x
<
width
;
x
++)
{
for
(
int
i
=
0
;
i
<
pixels
.
length
;
i
++)
{
int
color
=
scaleImage
.
getPixel
(
x
,
y
)
;
int
color
=
pixels
[
i
]
;
float
[]
rgb
=
new
float
[]{(
float
)
red
(
color
)
/
255.0f
,
(
float
)
green
(
color
)
/
255.0f
,
float
[]
rgb
=
new
float
[]{(
float
)
red
(
color
)
/
255.0f
,
(
float
)
green
(
color
)
/
255.0f
,
(
float
)
blue
(
color
)
/
255.0f
};
(
float
)
blue
(
color
)
/
255.0f
};
inputData
[
y
*
width
+
x
]
=
(
rgb
[
channelIdx
[
0
]]
-
inputMean
[
0
])
/
inputStd
[
0
];
inputData
[
i
]
=
(
rgb
[
channelIdx
[
0
]]
-
inputMean
[
0
])
/
inputStd
[
0
];
inputData
[
y
*
width
+
x
+
channelStride
[
0
]]
=
(
rgb
[
channelIdx
[
1
]]
-
inputMean
[
1
])
/
inputStd
[
1
];
inputData
[
i
+
channelStride
[
0
]]
=
(
rgb
[
channelIdx
[
1
]]
-
inputMean
[
1
])
/
inputStd
[
1
];
inputData
[
y
*
width
+
x
+
channelStride
[
1
]]
=
(
rgb
[
channelIdx
[
2
]]
-
inputMean
[
2
])
/
inputStd
[
2
];
inputData
[
i
+
channelStride
[
1
]]
=
(
rgb
[
channelIdx
[
2
]]
-
inputMean
[
2
])
/
inputStd
[
2
];
}
}
}
}
else
if
(
channels
==
1
)
{
}
else
if
(
channels
==
1
)
{
for
(
int
y
=
0
;
y
<
height
;
y
++)
{
int
[]
pixels
=
new
int
[
width
*
height
];
for
(
int
x
=
0
;
x
<
width
;
x
++)
{
scaleImage
.
getPixels
(
pixels
,
0
,
scaleImage
.
getWidth
(),
0
,
0
,
scaleImage
.
getWidth
(),
scaleImage
.
getHeight
());
int
color
=
inputImage
.
getPixel
(
x
,
y
);
for
(
int
i
=
0
;
i
<
pixels
.
length
;
i
++)
{
int
color
=
pixels
[
i
];
float
gray
=
(
float
)
(
red
(
color
)
+
green
(
color
)
+
blue
(
color
))
/
3.0f
/
255.0f
;
float
gray
=
(
float
)
(
red
(
color
)
+
green
(
color
)
+
blue
(
color
))
/
3.0f
/
255.0f
;
inputData
[
y
*
width
+
x
]
=
(
gray
-
inputMean
[
0
])
/
inputStd
[
0
];
inputData
[
i
]
=
(
gray
-
inputMean
[
0
])
/
inputStd
[
0
];
}
}
}
}
else
{
}
else
{
Log
.
i
(
TAG
,
"Unsupported channel size "
+
Integer
.
toString
(
channels
)
+
", only channel 1 and 3 is "
+
Log
.
i
(
TAG
,
"Unsupported channel size "
+
Integer
.
toString
(
channels
)
+
", only channel 1 and 3 is "
+
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录