mirror of
https://github.com/PaddlePaddle/FastDeploy.git
synced 2025-12-24 13:28:13 +08:00
[Android] Add CxxBuffer to native and Java PaddleSegModel (#677)
[Android] Add CxxBuffer to native PaddleSegModel
This commit is contained in:
@@ -197,6 +197,14 @@ public SegmentationResult predict(Bitmap ARGB8888Bitmap);
|
||||
// 预测并且可视化:预测结果以及可视化,并将可视化后的图片保存到指定的途径,以及将可视化结果渲染在Bitmap上
|
||||
public SegmentationResult predict(Bitmap ARGB8888Bitmap, String savedImagePath, float weight);
|
||||
public SegmentationResult predict(Bitmap ARGB8888Bitmap, boolean rendering, float weight); // 只渲染 不保存图片
|
||||
// 修改result,而非返回result,关注性能的用户可以将以下接口与SegmentationResult的CxxBuffer一起使用
|
||||
public boolean predict(Bitmap ARGB8888Bitmap, SegmentationResult result);
|
||||
public boolean predict(Bitmap ARGB8888Bitmap, SegmentationResult result, String savedImagePath, float weight);
|
||||
public boolean predict(Bitmap ARGB8888Bitmap, SegmentationResult result, boolean rendering, float weight);
|
||||
```
|
||||
- 设置竖屏或横屏模式: 对于 PP-HumanSeg系列模型,必须要调用该方法设置竖屏模式为true.
|
||||
```java
|
||||
public void setVerticalScreenFlag(boolean flag);
|
||||
```
|
||||
- 模型资源释放 API:调用 release() API 可以释放模型资源,返回true表示释放成功,false表示失败;调用 initialized() 可以判断模型是否初始化成功,true表示初始化成功,false表示失败。
|
||||
```java
|
||||
@@ -311,6 +319,10 @@ public class SegmentationResult {
|
||||
public float[] mScoreMap; // 预测到的得分 map 每个像素位置对应一个score HxW
|
||||
public long[] mShape; // label map实际的shape (H,W)
|
||||
public boolean mContainScoreMap = false; // 是否包含 score map
|
||||
// 用户可以选择直接使用CxxBuffer,而非通过JNI拷贝到Java层,
|
||||
// 该方式可以一定程度上提升性能
|
||||
public void setCxxBufferFlag(boolean flag); // 设置是否为CxxBuffer模式
|
||||
public boolean releaseCxxBuffer(); // 手动释放CxxBuffer!!!
|
||||
public boolean initialized(); // 检测结果是否有效
|
||||
}
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user