Coder Social home page Coder Social logo

paddlepaddle / paddlex Goto Github PK

View Code? Open in Web Editor NEW
4.6K 86.0 896.0 96.21 MB

PaddlePaddle End-to-End Development Toolkit(『飞桨』深度学习全流程开发工具)

Home Page: https://paddlex.readthedocs.io

License: Apache License 2.0

Shell 0.27% Python 84.68% CMake 1.35% C++ 6.69% Java 1.02% HTML 4.67% C 0.04% Batchfile 0.02% Makefile 0.01% C# 1.19% Cuda 0.05%
classification detection segmentation yolov3 unet mobilenet resnet deployment jetson deeplearning deep-neural-networks neural-networks industry

paddlex's Introduction

PaddleX

PaddleX -- 飞桨全流程开发工具,以低代码的形式支持开发者快速实现产业实际项目落地

近期动态

🔥 PaddleX3.0升级中,6月发布,敬请期待,云端使用请前往飞桨 AI Studio 星河社区:https://aistudio.baidu.com/pipeline/mine ,点击「创建产线」开启使用

产品介绍

🤗 PaddleX 集成飞桨智能视觉领域图像分类目标检测语义分割实例分割任务能力,将深度学习开发全流程从数据准备模型训练与优化多端部署端到端打通,并提供统一任务API接口图形化开发界面Demo。开发者无需分别安装不同套件,以低代码的形式即可快速完成飞桨全流程开发。

🏭 PaddleX 经过质检安防巡检遥感零售医疗等十多个行业实际应用场景验证,沉淀产业实际经验,并提供丰富的案例实践教程,全程助力开发者产业实践落地。

安装与快速体验

PaddleX提供了图像化开发界面、本地API、Restful-API三种开发模式。用户可根据自己的需求选择任意一种开始体验

产业级应用示例

PaddleX 使用文档

本文档介绍了PaddleX从数据准备、模型训练到模型剪裁量化,及最终部署的全流程使用方法。

1. 数据准备

2. 模型训练/评估/预测

3. 模型压缩

4. 模型部署

5. 附录

常见问题汇总

🤗 贡献代码🤗

我们非常欢迎您为PaddleX贡献代码或者提供使用建议。如果您可以修复某个issue或者增加一个新功能,欢迎给我们提交Pull Requests。

开发者贡献项目

paddlex's People

Contributors

an1018 avatar angel-yi avatar channingss avatar chliang avatar cjh3020889729 avatar cuicheng01 avatar dyning avatar flyingqianmm avatar furao123 avatar guojiahuiemily avatar harryoung avatar heliqi avatar heqinwill avatar holyseven avatar jiangjiajun avatar joey12300 avatar kyanaww avatar lailuboy avatar larastustu avatar linhandev avatar mamingjie-china avatar rollroll90 avatar shenyuhan avatar sunahong1993 avatar syyxsxx avatar will-jl944 avatar wuyefeilin avatar xifeng-lin avatar yzl19940819 avatar zeyuchen avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

paddlex's Issues

paddleX API啥时候加入 focal loss啊?

如题,我样本 最小的类和 最大类 数量 倍数达到了 50倍,tensorflow 里用 focal loss 起到了作用,请问 API方式啥时候提供?目前在用你们 API方式

在公司内部服务器 import paddlex 出现奇怪的报错,求解答

import paddlex
WARNING: OMP_NUM_THREADS set to 16, not 1. The computation speed will not be optimized if you use data parallel. It will fail if this PaddlePaddle binary is compiled with OpenBlas since OpenBlas does not support multi-threads.
PLEASE USE OMP_NUM_THREADS WISELY.
2020-06-19 14:10:28,252-INFO: Instantiated empty configuration.

HDFS initialization failed, please check if .hdfscli,cfg exists.

官方文档示例代码统一一哈

https://paddlex.readthedocs.io/zh_CN/latest/quick_start.html
粘贴自官方文档
eval_dataset = pdx.datasets.ImageNet( data_dir='vegetables_cls', file_list='vegetables_cls/train_list.txt', label_list='vegetables_cls/labels.txt', transforms=train_transforms)
https://github.com/PaddlePaddle/PaddleX/blob/develop/tutorials/train/classification/mobilenetv2.py#L25
eval_dataset = pdx.datasets.ImageNet( data_dir='vegetables_cls', file_list='vegetables_cls/val_list.txt', label_list='vegetables_cls/labels.txt', transforms=eval_transforms)

使用PaddleX GUI各种报错

1.用模型选择FasterRcnn 竟然不出来,只有yolo的Backbone选择
image
2.在训练参数都设置好后,开始训练,就报如图所示错误,还一直报,一直弹框
image

1、win7和server版本提示cv2 已排除 是win10系统
2、不是管理员运行 已排除
3、中文路径 已排除
4、有后台进程未退出 已排除

请大神给解决一下把。

文档错误!

https://github.com/PaddlePaddle/PaddleX/blob/develop/docs/tutorials/deploy/deploy_server/deploy_cpp/deploy_cpp_linux.md

编译cmake的命令在scripts/build.sh中,请根据实际情况修改主要参数,其主要内容说明如下:”
这段说清楚 scripts/build.sh 是在哪个目录下的,
如果是PaddleX-develop/deploy/cpp/scripts 下,则.sh文件需要权限,此处没有,增加权限 chmod 777 *.sh后

scripts/build.sh中

PADDLE_DIR=/path/to/fluid_inference/
这路径怎么来的?
Step2: 中:
“下载并解压后/root/projects/fluid_inference” 那么此处路径是 “/root/projects/fluid_inference”

执行build脚本:
sh ./scripts/build.sh”
路径也不写清楚,举个例子也好!
下面执行:
/PaddleX-develop/deploy/cpp/scripts $ ./build.sh sh: 0: Can't open /home/pi/PaddleX-develop/deploy/cpp/scripts/scripts/bootstrap.sh sh: 0: Can't open /home/pi/PaddleX-develop/deploy/cpp/scripts/scripts/bootstrap.sh CMake Error: The source directory "/home/pi/PaddleX-develop/deploy/cpp/scripts" does not appear to contain CMakeLists.txt. Specify --help for usage, or press the help button on the CMake GUI. make: *** No targets specified and no makefile found. Stop.

“sh: 0: Can't open /home/pi/PaddleX-develop/deploy/cpp/scripts/scripts/bootstrap.sh”

里面俩scripts/scripts/ 怎么出来的?

文档能否写的清楚点,都好好测试下,开发人员安心写代码,测试人员好好测试写文档。

模型转化

请问用PaddleX做的目标检测的模型能不能转换成PaddleDetection的模型?

执行resnet50.py出错

python tutorials/train/classification/resnet50.py
2020-06-10 11:14:27 [INFO] Decompressing ./vegetables_cls.tar.gz...
2020-06-10 11:14:27 [INFO] Starting to read file list from dataset...
2020-06-10 11:14:27 [INFO] 840 samples in file vegetables_cls/train_list.txt
2020-06-10 11:14:27 [INFO] Starting to read file list from dataset...
2020-06-10 11:14:27 [INFO] 240 samples in file vegetables_cls/val_list.txt
W0610 11:14:29.627683 4592 device_context.cc:237] Please NOTE: device: 0, CUDA Capability: 61, Driver API Version: 10.1, Runtime API Version: 10.0
W0610 11:14:29.630448 4592 device_context.cc:245] device: 0, cuDNN Version: 7.6.
2020-06-10 11:14:30 [INFO] Load pretrain weights from output/resnet50/pretrain/ResNet50.
2020-06-10 11:14:30 [WARNING] [SKIP] Shape of pretrained weight output/resnet50/pretrain/ResNet50/fc_0.w_0 doesn't match.(Pretrained: (2048, 1000), Actual: (2048, 6))
2020-06-10 11:14:30 [WARNING] [SKIP] Shape of pretrained weight output/resnet50/pretrain/ResNet50/fc_0.b_0 doesn't match.(Pretrained: (1000,), Actual: (6,))
2020-06-10 11:14:30,463-WARNING: output/resnet50/pretrain/ResNet50.pdparams not found, try to load model file saved with [ save_params, save_persistables, save_vars ]
2020-06-10 11:14:30,463-WARNING: output/resnet50/pretrain/ResNet50.pdparams not found, try to load model file saved with [ save_params, save_persistables, save_vars ]
2020-06-10 11:14:30 [INFO] There are 265 varaibles in output/resnet50/pretrain/ResNet50 are loaded.
I0610 11:14:46.227094 4592 parallel_executor.cc:440] The Program will be executed on CUDA using ParallelExecutor, 1 cards are used, so 1 programs are executed in parallel.
I0610 11:14:46.261431 4592 build_strategy.cc:365] SeqOnlyAllReduceOps:0, num_trainers:1
I0610 11:14:46.331351 4592 parallel_executor.cc:307] Inplace strategy is enabled, when build_strategy.enable_inplace = True
I0610 11:14:46.360970 4592 parallel_executor.cc:375] Garbage collection strategy is enabled, when FLAGS_eager_delete_tensor_gb = 0
*** Error in `python': double free or corruption (!prev): 0x0000000001311660 ***
W0610 11:14:47.626109 10483 init.cc:209] Warning: PaddlePaddle catches a failure signal, it may not work properly
W0610 11:14:47.626158 10483 init.cc:211] You could check whether you killed PaddlePaddle thread/process accidentally or report the case to PaddlePaddle
W0610 11:14:47.626163 10483 init.cc:214] The detail failure signal is:

W0610 11:14:47.626169 10483 init.cc:217] *** Aborted at 1591758887 (unix time) try "date -d @1591758887" if you are using GNU date ***
W0610 11:14:47.627741 10483 init.cc:217] PC: @ 0x0 (unknown)
W0610 11:14:47.628168 10483 init.cc:217] *** SIGABRT (@0x3e8000028f1) received by PID 10481 (TID 0x7fca13278700) from PID 10481; stack trace: ***
*** Error in `python': double free or corruption (!prev): 0x0000000001311660 ***
W0610 11:14:47.653316 10488 init.cc:209] Warning: PaddlePaddle catches a failure signal, it may not work properly
W0610 11:14:47.653357 10488 init.cc:211] You could check whether you killed PaddlePaddle thread/process accidentally or report the case to PaddlePaddle
W0610 11:14:47.653362 10488 init.cc:214] The detail failure signal is:

W0610 11:14:47.653367 10488 init.cc:217] *** Aborted at 1591758887 (unix time) try "date -d @1591758887" if you are using GNU date ***

AssertionError: invalid id[383702] for memory managers

问题:
image

代码:
"""
File: deeplabv3p.py
"""
import os

选择使用指定号卡

os.environ['CUDA_VISIBLE_DEVICES'] = '3'
os.environ['FLAGS_eager_delete_tensor_gb'] = "0.0"

import paddlex as pdx
from paddlex.seg import transforms

定义训练和验证时的transforms

API说明: https://paddlex.readthedocs.io/zh_CN/latest/apis/transforms/seg_transforms.html#composedsegtransforms

#train_transforms = transforms.ComposedSegTransforms(mode='train', train_crop_size=[1024, 1024])
#eval_transforms = transforms.ComposedSegTransforms(mode='eval')

定义训练和验证时的transforms

crop_size=768
"""
train_transforms = transforms.Compose([
transforms.RandomHorizontalFlip(),
transforms.RandomVerticalFlip(),
transforms.RandomRotate(),
transforms.ResizeStepScaling(),
transforms.RandomPaddingCrop(crop_size=crop_size),
transforms.Normalize()
])
"""
train_transforms = transforms.Compose([
transforms.RandomPaddingCrop(crop_size=crop_size,
im_padding_value=128, label_padding_value=255),
transforms.Normalize()
])
eval_transforms = transforms.Compose([
transforms.Normalize()
])

定义训练和验证所用的数据集

API说明: https://paddlex.readthedocs.io/zh_CN/latest/apis/datasets/semantic_segmentation.html#segdataset

train_dataset = pdx.datasets.SegDataset(
data_dir='../dataset-all/',
file_list='../dataset-all/train_dataset/train_list.txt',
label_list='../dataset-all/labels.txt',
transforms=train_transforms,
shuffle=True)
eval_dataset = pdx.datasets.SegDataset(
data_dir='../dataset-all/',
file_list='../dataset-all/test_dataset/test_list.txt',
label_list='../dataset-all/labels.txt',
transforms=eval_transforms)

初始化模型,并进行训练

可使用VisualDL查看训练指标

VisualDL启动方式: visualdl --logdir output/unet/vdl_log --port 8001

浏览器打开 https://0.0.0.0:8001即可

其中0.0.0.0为本机访问,如为远程服务, 改成相应机器IP

https://paddlex.readthedocs.io/zh_CN/latest/apis/models/semantic_segmentation.html#hrnet

num_classes = len(train_dataset.labels)
print("num_classes: %d" % num_classes)
model = pdx.seg.DeepLabv3p(num_classes=num_classes,
backbone='Xception65',
use_dice_loss=True,
use_bce_loss=True,
ignore_index=255)
model.train(
num_epochs=1000,
train_dataset=train_dataset,
train_batch_size=2,
eval_dataset=eval_dataset,
save_interval_epochs=100,
learning_rate=0.005,
save_dir='models/deeplabv3p_Xception65',
use_vdl=True)

eval_metrics = model.evaluate(eval_dataset, batch_size=num_classes)
print("eval_metrics:", eval_metrics)

图像分类怎么生成 train_list.txt 和 test_list.txt

image

我在GUI界面确实简单的按照文件夹导入就可以了,但是现在我要 用 notebook的方式在我们服务器上跑,

请问有没有 开源的代码 把 GUI里 生成 train_list.txt test_list.txt v和 al_list ,labels 四个 txt文件,以及 对应的画出 类别均衡图
方便 给领导汇报的时候贴图呢?
我在你们 各大教程里都找过了,没找到,你们GUI确实可以,但是我老大的意思 太low,这样子连个初级算法工程师的资格都不算,所以,他要求用 代码的方式完成目前的任务,在线等。

labelme数据标注有问题导致训练出错

1.使用labelme标注后保存的jason文件出现json名称与保存的名称不一致(具体原因未知),如json文件70.json,json文件里面的imagePath:69.jpg。
2.此时,用paddlex导入数据集会成功,但是在浏览数据集的时候提示找不到69.jpg。
3.训练的时候同样会报错。

paddlex训练的模型在Jetson nano上用python API部署报错

硬件环境是Jetson nano
JetPack4.3 Cuda10.0 Cudnn 7.6.3
python环境是安装paddlepaddle-gpu==2.0.0alpha0(自己编译的)
并安装了paddlex,由于有找不到opencv的报错(实际上有,通过ln过去的),我按照--no-dependencies的方式一个个包安装。
模型训练使用Aistudio的https://aistudio.baidu.com/aistudio/projectdetail/633900进行训练
我用文档中的方法对模型进行了裁剪训练。
image
训练代码:
num_classes = len(train_dataset.labels)
print('class num:', num_classes)
model = pdx.det.YOLOv3(num_classes=num_classes, backbone='MobileNetV3_large', anchors=anchor_sizes)
model.train(
num_epochs=20,
train_dataset=train_dataset,
train_batch_size=4,
eval_dataset=eval_dataset,
learning_rate=0.00025,
lr_decay_epochs=[10, 15],
save_interval_epochs=2,
log_interval_steps=100,
save_dir='./yolov3_mobilenetv3_prune',
pretrain_weights='./yolov3_MobileNetV3_large/best_model',
# pretrain_weights='IMAGENET',
use_vdl=True,
sensitivities_file='./sensitivities.data',
eval_metric_loss=0.10)

之后导出为Inference模型:(想用trt固定了输入大小)
!paddlex --export_inference --model_dir=./yolov3_mobilenetv3_prune/best_model --save_dir=./yolov3_mobilenetv3_inference_model --fixed_input_shape=[512,512]

实际部署的时候报错如下:
Traceback (most recent call last):
File "test.py", line 20, in
result = model.predict(image_name, eval_transforms)
File "/home/dlinano/envs/paddle4-paddlex/lib/python3.6/site-packages/paddlex/deploy.py", line 235, in predict
model_pred = self.raw_predict(preprocessed_input)
File "/home/dlinano/envs/paddle4-paddlex/lib/python3.6/site-packages/paddlex/deploy.py", line 217, in raw_predict
self.predictor.zero_copy_run()
RuntimeError: parallel_for failed: too many resources requested for launch

在Paddle的issue里面的不完整解答说是硬件资源不足?我认为比较没有说服力,目前模型导出后大概30M,之前尝试过200多M大小的模型的部署也未出现这种问题。请问有什么比较好的解决方法吗?
image

运行 10分钟快速上手使用PaddleX——MobileNetV3_ssld图像分类 的报错

发生在运行 10分钟快速上手使用PaddleX——MobileNetV3_ssld图像分类
https://aistudio.baidu.com/aistudio/projectdetail/439860

前面数据集导入在本地跑都没问题。
但是运行到 model.train 报错了,谢谢各位大佬给看看报错信息,并给出解答,谢谢!
睡了,晚安,各位
num_classes = len(train_dataset.labels)
model = pdx.cls.MobileNetV3_large_ssld(num_classes=num_classes)
model.train(num_epochs=12,
train_dataset=train_dataset,
train_batch_size=32,
eval_dataset=eval_dataset,
lr_decay_epochs=[6, 8],
save_interval_epochs=1,
learning_rate=0.00625,
save_dir='output/mobilenetv3_large_ssld',
use_vdl=True)

2020-06-19 15:58:21,935-INFO: If regularizer of a Parameter has been set by 'fluid.ParamAttr' or 'fluid.WeightNormParamAttr' already. The Regularization[L2Decay, regularization_coeff=0.000100] in Optimizer will not take effect, and it will only be applied to other Parameters!
Downloading MobileNetV3_large_x1_0_ssld_pretrained.tar
[==================================================] 100.00%
Uncompress /home/wsuser/.paddlehub/tmp/tmpx64j5fu9/MobileNetV3_large_x1_0_ssld_pretrained.tar
[==================================================] 100.00%
2020-06-19 15:58:34 [INFO] Load pretrain weights from output/mobilenetv3_large_ssld/pretrain/MobileNetV3_large_x1_0_ssld.
2020-06-19 15:58:34 [WARNING] [SKIP] Shape of pretrained weight output/mobilenetv3_large_ssld/pretrain/MobileNetV3_large_x1_0_ssld/fc_weights doesn't match.(Pretrained: (1280, 1000), Actual: (1280, 6))
2020-06-19 15:58:34 [WARNING] [SKIP] Shape of pretrained weight output/mobilenetv3_large_ssld/pretrain/MobileNetV3_large_x1_0_ssld/fc_offset doesn't match.(Pretrained: (1000,), Actual: (6,))
2020-06-19 15:58:34,387-WARNING: output/mobilenetv3_large_ssld/pretrain/MobileNetV3_large_x1_0_ssld.pdparams not found, try to load model file saved with [ save_params, save_persistables, save_vars ]
2020-06-19 15:58:34 [INFO] There are 268 varaibles in output/mobilenetv3_large_ssld/pretrain/MobileNetV3_large_x1_0_ssld are loaded.
/opt/conda/envs/Python-3.6-CUDA/lib/python3.6/site-packages/paddle/fluid/executor.py:1070: UserWarning: The following exception is not an EOF exception.
"The following exception is not an EOF exception.")

EnforceNotMet Traceback (most recent call last)
in
9 learning_rate=0.00625,
10 save_dir='output/mobilenetv3_large_ssld',
---> 11 use_vdl=True)

/opt/conda/envs/Python-3.6-CUDA/lib/python3.6/site-packages/paddlex/cv/models/classifier.py in train(self, num_epochs, train_dataset, train_batch_size, eval_dataset, save_interval_epochs, log_interval_steps, save_dir, pretrain_weights, optimizer, learning_rate, warmup_steps, warmup_start_lr, lr_decay_epochs, lr_decay_gamma, use_vdl, sensitivities_file, eval_metric_loss, early_stop, early_stop_patience, resume_checkpoint)
201 use_vdl=use_vdl,
202 early_stop=early_stop,
--> 203 early_stop_patience=early_stop_patience)
204
205 def evaluate(self,

/opt/conda/envs/Python-3.6-CUDA/lib/python3.6/site-packages/paddlex/cv/models/base.py in train_loop(self, num_epochs, train_dataset, train_batch_size, eval_dataset, save_interval_epochs, log_interval_steps, save_dir, use_vdl, early_stop, early_stop_patience)
454 self.parallel_train_prog,
455 feed=data,
--> 456 fetch_list=list(self.train_outputs.values()))
457 outputs_avg = np.mean(np.array(outputs), axis=1)
458 records.append(outputs_avg)

/opt/conda/envs/Python-3.6-CUDA/lib/python3.6/site-packages/paddle/fluid/executor.py in run(self, program, feed, fetch_list, feed_var_name, fetch_var_name, scope, return_numpy, use_program_cache, return_merged, use_prune)
1069 warnings.warn(
1070 "The following exception is not an EOF exception.")
-> 1071 six.reraise(*sys.exc_info())
1072
1073 def _run_impl(self, program, feed, fetch_list, feed_var_name,

/opt/conda/envs/Python-3.6-CUDA/lib/python3.6/site-packages/six.py in reraise(tp, value, tb)
691 return getattr(self, assertNotRegex)(*args, **kwargs)
692
--> 693
694 if PY3:
695 exec
= getattr(moves.builtins, "exec")

/opt/conda/envs/Python-3.6-CUDA/lib/python3.6/site-packages/paddle/fluid/executor.py in run(self, program, feed, fetch_list, feed_var_name, fetch_var_name, scope, return_numpy, use_program_cache, return_merged, use_prune)
1064 use_program_cache=use_program_cache,
1065 use_prune=use_prune,
-> 1066 return_merged=return_merged)
1067 except Exception as e:
1068 if not isinstance(e, core.EOFException):

/opt/conda/envs/Python-3.6-CUDA/lib/python3.6/site-packages/paddle/fluid/executor.py in _run_impl(self, program, feed, fetch_list, feed_var_name, fetch_var_name, scope, return_numpy, use_program_cache, return_merged, use_prune)
1154 use_program_cache=use_program_cache)
1155
-> 1156 program._compile(scope, self.place)
1157 if program._is_inference:
1158 return self._run_inference(program._executor, feed)

/opt/conda/envs/Python-3.6-CUDA/lib/python3.6/site-packages/paddle/fluid/compiler.py in _compile(self, scope, place)
441 use_cuda=isinstance(self._place, core.CUDAPlace),
442 scope=self._scope,
--> 443 places=self._places)
444 return self
445

/opt/conda/envs/Python-3.6-CUDA/lib/python3.6/site-packages/paddle/fluid/compiler.py in _compile_data_parallel(self, places, use_cuda, scope)
394 cpt.to_text(self._loss_name)
395 if self._loss_name else six.u(''), self._scope, self._local_scopes,
--> 396 self._exec_strategy, self._build_strategy, self._graph)
397
398 def _compile_inference(self):

EnforceNotMet:


C++ Call Stacks (More useful to developers):

0 std::string paddle::platform::GetTraceBackString<char const*>(char const*&&, char const*, int)
1 paddle::platform::EnforceNotMet::EnforceNotMet(std::__exception_ptr::exception_ptr, char const*, int)
2 paddle::platform::dynload::GetNCCLDsoHandle()
3 void std::__once_call_impl<std::_Bind_simple<paddle::platform::dynload::DynLoad__ncclCommInitAll::operator()<ncclComm**, int, int*>(ncclComm**, int, int*)::{lambda()#1} ()> >()
4 paddle::platform::NCCLContextMap::NCCLContextMap(std::vector<paddle::platform::Place, std::allocatorpaddle::platform::Place > const&, ncclUniqueId*, unsigned long, unsigned long)
5 paddle::platform::NCCLCommunicator::InitFlatCtxs(std::vector<paddle::platform::Place, std::allocatorpaddle::platform::Place > const&, std::vector<ncclUniqueId*, std::allocator<ncclUniqueId*> > const&, unsigned long, unsigned long)
6 paddle::framework::ParallelExecutorPrivate::InitNCCLCtxs(paddle::framework::Scope*, paddle::framework::details::BuildStrategy const&)
7 paddle::framework::ParallelExecutorPrivate::InitOrGetNCCLCommunicator(paddle::framework::Scope*, paddle::framework::details::BuildStrategy*)
8 paddle::framework::ParallelExecutor::ParallelExecutor(std::vector<paddle::platform::Place, std::allocatorpaddle::platform::Place > const&, std::vector<std::string, std::allocatorstd::string > const&, std::string const&, paddle::framework::Scope*, std::vector<paddle::framework::Scope*, std::allocatorpaddle::framework::Scope* > const&, paddle::framework::details::ExecutionStrategy const&, paddle::framework::details::BuildStrategy const&, paddle::framework::ir::Graph*)


Error Message Summary:

Error: Failed to find dynamic library: libnccl.so ( libnccl.so: cannot open shared object file: No such file or directory )
Please specify its path correctly using following ways:
Method. set environment variable LD_LIBRARY_PATH on Linux or DYLD_LIBRARY_PATH on Mac OS.
For instance, issue command: export LD_LIBRARY_PATH=...
Note: After Mac OS 10.11, using the DYLD_LIBRARY_PATH is impossible unless System Integrity Protection (SIP) is disabled. at (/paddle/paddle/fluid/platform/dynload/dynamic_loader.cc:177)

后处理速度太慢

将人像分割模型部署在手机上推理时间大概在30ms,但是后处理visualize要300ms

DeeplabV3+模型获取结果如何截图

paddlex是否有对应的接口,可以根据deeplabv3+获取的结果截图,或者告诉我返回值都是什么,我怎么来用矩形把结果在图片中框起来并截图。

预测视频

预测图片已经可以实现,怎么预测视频?

预测时报错

https://paddlex.readthedocs.io/zh_CN/latest/quick_start.html
按照文档训练了图片分类模型,训练正常,不同是使用自己的数据集,但使用
import paddlex as pdx
model = pdx.load_model('output/mobilenetv2/epoch_8')
result = model.predict('vegetables_cls/bocai/100.jpg', topk=3)
print("Predict Result:", result)
预测时报错:
[root@72b2d0dbbbe6 classification]# python3 infer.py
W0624 07:30:16.347707 9900 device_context.cc:252] Please NOTE: device: 0, CUDA Capability: 75, Driver API Version: 10.2, Runtime API Version: 10.0
W0624 07:30:16.352710 9900 device_context.cc:260] device: 0, cuDNN Version: 7.6.
2020-06-24 07:30:18 [INFO] Model[MobileNetV2] loaded.
/usr/local/lib64/python3.6/site-packages/paddle/fluid/executor.py:1070: UserWarning: The following exception is not an EOF exception.
"The following exception is not an EOF exception.")
Traceback (most recent call last):
File "infer.py", line 3, in
result = model.predict('1.jpg', topk=3)
File "/usr/local/lib/python3.6/site-packages/paddlex/cv/models/classifier.py", line 292, in predict
use_program_cache=True)
File "/usr/local/lib64/python3.6/site-packages/paddle/fluid/executor.py", line 1071, in run
six.reraise(*sys.exc_info())
File "/usr/local/lib/python3.6/site-packages/six.py", line 703, in reraise
raise value
File "/usr/local/lib64/python3.6/site-packages/paddle/fluid/executor.py", line 1066, in run
return_merged=return_merged)
File "/usr/local/lib64/python3.6/site-packages/paddle/fluid/executor.py", line 1154, in _run_impl
use_program_cache=use_program_cache)
File "/usr/local/lib64/python3.6/site-packages/paddle/fluid/executor.py", line 1232, in _run_program
False)
paddle.fluid.core_avx.EnforceNotMet:


C++ Call Stacks (More useful to developers):

0 std::string paddle::platform::GetTraceBackString<char const*>(char const*&&, char const*, int)
1 paddle::platform::EnforceNotMet::EnforceNotMet(std::__exception_ptr::exception_ptr, char const*, int)
2 paddle::operators::CUDNNConvOpKernel::Compute(paddle::framework::ExecutionContext const&) const
3 std::_Function_handler<void (paddle::framework::ExecutionContext const&), paddle::framework::OpKernelRegistrarFunctor<paddle::platform::CUDAPlace, false, 0ul, paddle::operators::CUDNNConvOpKernel, paddle::operators::CUDNNConvOpKernel, paddle::operators::CUDNNConvOpKernelpaddle::platform::float16 >::operator()(char const*, char const*, int) const::{lambda(paddle::framework::ExecutionContext const&)#1}>::_M_invoke(std::_Any_data const&, paddle::framework::ExecutionContext const&)
4 paddle::framework::OperatorWithKernel::RunImpl(paddle::framework::Scope const&, paddle::platform::Place const&, paddle::framework::RuntimeContext*) const
5 paddle::framework::OperatorWithKernel::RunImpl(paddle::framework::Scope const&, paddle::platform::Place const&) const
6 paddle::framework::OperatorBase::Run(paddle::framework::Scope const&, paddle::platform::Place const&)
7 paddle::framework::Executor::RunPartialPreparedContext(paddle::framework::ExecutorPrepareContext*, paddle::framework::Scope*, long, long, bool, bool, bool)
8 paddle::framework::Executor::RunPreparedContext(paddle::framework::ExecutorPrepareContext*, paddle::framework::Scope*, bool, bool, bool)


Python Call Stacks (More useful to users):

File "/usr/local/lib64/python3.6/site-packages/paddle/fluid/framework.py", line 2610, in append_op
attrs=kwargs.get("attrs", None))
File "/usr/local/lib64/python3.6/site-packages/paddle/fluid/layer_helper.py", line 43, in append_op
return self.main_program.current_block().append_op(*args, **kwargs)
File "/usr/local/lib64/python3.6/site-packages/paddle/fluid/layers/nn.py", line 2933, in conv2d
"data_format": data_format,
File "/usr/local/lib/python3.6/site-packages/paddlex/cv/nets/mobilenet_v2.py", line 149, in conv_bn_layer
bias_attr=False)
File "/usr/local/lib/python3.6/site-packages/paddlex/cv/nets/mobilenet_v2.py", line 60, in call
name='conv1_1')
File "/usr/local/lib/python3.6/site-packages/paddlex/cv/nets/init.py", line 90, in mobilenetv2
return model(input)
File "/usr/local/lib/python3.6/site-packages/paddlex/cv/models/classifier.py", line 64, in build_net
net_out = model(image, num_classes=self.num_classes)
File "/usr/local/lib/python3.6/site-packages/paddlex/cv/models/load_model.py", line 61, in load_model
mode='test')
File "infer.py", line 2, in
model = pdx.load_model('output/mobilenetv2/best_model')


Error Message Summary:

ExternalError: Cudnn error, CUDNN_STATUS_EXECUTION_FAILED at (/paddle/paddle/fluid/operators/conv_cudnn_op.cu:300)
[operator < conv2d > error]
[root@72b2d0dbbbe6 classification]# python3 infer.py
W0624 07:47:27.601330 10003 device_context.cc:252] Please NOTE: device: 0, CUDA Capability: 75, Driver API Version: 10.2, Runtime API Version: 10.0
W0624 07:47:27.606433 10003 device_context.cc:260] device: 0, cuDNN Version: 7.6.
2020-06-24 07:47:29 [INFO] Model[MobileNetV2] loaded.
/usr/local/lib64/python3.6/site-packages/paddle/fluid/executor.py:1070: UserWarning: The following exception is not an EOF exception.
"The following exception is not an EOF exception.")
Traceback (most recent call last):
File "infer.py", line 3, in
result = model.predict('1.jpg', topk=3)
File "/usr/local/lib/python3.6/site-packages/paddlex/cv/models/classifier.py", line 292, in predict
use_program_cache=True)
File "/usr/local/lib64/python3.6/site-packages/paddle/fluid/executor.py", line 1071, in run
six.reraise(*sys.exc_info())
File "/usr/local/lib/python3.6/site-packages/six.py", line 703, in reraise
raise value
File "/usr/local/lib64/python3.6/site-packages/paddle/fluid/executor.py", line 1066, in run
return_merged=return_merged)
File "/usr/local/lib64/python3.6/site-packages/paddle/fluid/executor.py", line 1154, in _run_impl
use_program_cache=use_program_cache)
File "/usr/local/lib64/python3.6/site-packages/paddle/fluid/executor.py", line 1232, in _run_program
False)
paddle.fluid.core_avx.EnforceNotMet:


C++ Call Stacks (More useful to developers):

0 std::string paddle::platform::GetTraceBackString<char const*>(char const*&&, char const*, int)
1 paddle::platform::EnforceNotMet::EnforceNotMet(std::__exception_ptr::exception_ptr, char const*, int)
2 paddle::operators::CUDNNConvOpKernel::Compute(paddle::framework::ExecutionContext const&) const
3 std::_Function_handler<void (paddle::framework::ExecutionContext const&), paddle::framework::OpKernelRegistrarFunctor<paddle::platform::CUDAPlace, false, 0ul, paddle::operators::CUDNNConvOpKernel, paddle::operators::CUDNNConvOpKernel, paddle::operators::CUDNNConvOpKernelpaddle::platform::float16 >::operator()(char const*, char const*, int) const::{lambda(paddle::framework::ExecutionContext const&)#1}>::_M_invoke(std::_Any_data const&, paddle::framework::ExecutionContext const&)
4 paddle::framework::OperatorWithKernel::RunImpl(paddle::framework::Scope const&, paddle::platform::Place const&, paddle::framework::RuntimeContext*) const
5 paddle::framework::OperatorWithKernel::RunImpl(paddle::framework::Scope const&, paddle::platform::Place const&) const
6 paddle::framework::OperatorBase::Run(paddle::framework::Scope const&, paddle::platform::Place const&)
7 paddle::framework::Executor::RunPartialPreparedContext(paddle::framework::ExecutorPrepareContext*, paddle::framework::Scope*, long, long, bool, bool, bool)
8 paddle::framework::Executor::RunPreparedContext(paddle::framework::ExecutorPrepareContext*, paddle::framework::Scope*, bool, bool, bool)


Python Call Stacks (More useful to users):

File "/usr/local/lib64/python3.6/site-packages/paddle/fluid/framework.py", line 2610, in append_op
attrs=kwargs.get("attrs", None))
File "/usr/local/lib64/python3.6/site-packages/paddle/fluid/layer_helper.py", line 43, in append_op
return self.main_program.current_block().append_op(*args, **kwargs)
File "/usr/local/lib64/python3.6/site-packages/paddle/fluid/layers/nn.py", line 2933, in conv2d
"data_format": data_format,
File "/usr/local/lib/python3.6/site-packages/paddlex/cv/nets/mobilenet_v2.py", line 149, in conv_bn_layer
bias_attr=False)
File "/usr/local/lib/python3.6/site-packages/paddlex/cv/nets/mobilenet_v2.py", line 60, in call
name='conv1_1')
File "/usr/local/lib/python3.6/site-packages/paddlex/cv/nets/init.py", line 90, in mobilenetv2
return model(input)
File "/usr/local/lib/python3.6/site-packages/paddlex/cv/models/classifier.py", line 64, in build_net
net_out = model(image, num_classes=self.num_classes)
File "/usr/local/lib/python3.6/site-packages/paddlex/cv/models/load_model.py", line 61, in load_model
mode='test')
File "infer.py", line 2, in
model = pdx.load_model('output/mobilenetv2/best_model')


Error Message Summary:

ExternalError: Cudnn error, CUDNN_STATUS_EXECUTION_FAILED at (/paddle/paddle/fluid/operators/conv_cudnn_op.cu:300)
[operator < conv2d > error]
貌似环境报错,但训练过程没问题,而且使用检查环境的命令也正常。

剪枝

请问一下,我仿照文档在使用模型剪枝的时候,最后运行的结果是{},为什么呢

AttributeError

AttributeError: module 'paddlex' has no attribute 'log_level'

def log(level=2, message="", use_color=False):
current_time = time.time()
time_array = time.localtime(current_time)
current_time = time.strftime("%Y-%m-%d %H:%M:%S", time_array)
if paddlex.log_level >= level:
if use_color:
print("\033[1;31;40m{} [{}]\t{}\033[0m".format(current_time, levels[
level], message).encode("utf-8").decode("latin1"))
else:
print("{} [{}]\t{}".format(current_time, levels[level], message)
.encode("utf-8").decode("latin1"))
sys.stdout.flush()

if paddlex.log_level >= level:
这句报错了怎么回事

训练报错 :Exception: warmup_steps should less than 240

代码如下:
model = pdx.det.FasterRCNN(num_classes=num_classes, backbone='ResNet18')
model.train(
num_epochs=240,
train_dataset=train_dataset,
train_batch_size=8,
eval_dataset=eval_dataset,
learning_rate=0.0025,
lr_decay_epochs=[40, 120],
save_interval_epochs=2,
save_dir='output/faster_rcnn_r50_fpn')
报错:Exception: warmup_steps should less than 240
报错很多次了,每次都改半天,忍不了了,请问num_epochs和lr_decay_epochs这俩参数怎么设置?

DeepLab v3模型预测图片边缘出现锯齿

求助,我使用Paddlex的DeepLabv3p预训练模型+自有数据集训练后,在预测图片时,人体边缘锯齿感很严重,同时图片中还有一些残缺。
原图:
image

预测图:
image

我使用的模型参数是:

# num_classes = 2
pdx.seg.DeepLabv3p(
    num_classes=num_classes, 
    backbone='Xception65',
    use_bce_loss=True )

transforms参数:

train_transforms = transforms.ComposedSegTransforms(mode='train', train_crop_size=[512, 512])
eval_transforms = transforms.ComposedSegTransforms(mode='eval')

训练好的模型验证集mIOU=0.93

请问我调整哪些参数可以解决这两个问题呢?

测试启动不了

在paddlex里面选择实例分割后,模型训练没问题(数据集很小就是看看效果),点击模型测试的启动测试,在完成进度那里一直显示启动中

恢复训练模型过程阻塞

model = pdx.det.MaskRCNN(num_classes=num_classes, backbone='ResNet50')

model.train(
num_epochs=200,
train_dataset=train_dataset,
train_batch_size=2,
eval_dataset=eval_dataset,
learning_rate=0.00125,
warmup_steps=10,
lr_decay_epochs=[8, 11],
save_dir='output/mask_rcnn_r50_fpn',
resume_checkpoint='output/mask_rcnn_r50_fpn/epoch_200',
use_vdl=True)

paddlex训练maskrcnn,想从200轮接着训练

运行后一直卡在加载完参数的步骤之后,如下图:
image

Normal模式下保存的模型,怎样直接加载预测?

我在aistudio上面加载模型预测的方式是:通过新建模型后,调用model的train接口,设置num_epochs=0,pretrain_weights='./output/faster_rcnn_r50_fpn/best_model',然后进行predict。
而把模型文件下载到本地windows系统中,在本地进行预测时,有没有更直接的方法?

数据集创建引导问题

PaddleX GUI: https://www.paddlepaddle.org.cn/paddle/paddleX
GUI的新建数据集界面右侧说明文档的“数据集导入规则说明“中的”语义分割任务“
下面的路径文件夹-(可选)label.txt,不能导入,存在lable.txt时,类别仍然为012...
经检查后发现应该命名为labels.txt,右测说明文档有问题

移动端部署人像分割模型出错

您好!我按照 https://paddlex.readthedocs.io/zh_CN/develop/examples/human_segmentation.html#paddle-lite
将模型部署在移动端时,直接运行demo默认的分类模型正常,但是部署人像分割模型humanseg_mobile_quant、和humanseg_mobile_inference时在load模型时闪退,报以下错误,请问是什么原因?

2020-08-04 15:47:45.938 6283-6307/com.baidu.paddlex.lite.demo A/Paddle-Lite: [F 8/ 4 15:47:45.938 ...evelop/Paddle-Lite/lite/api/light_api.cc:160 BuildRuntimeProgram] Check failed: it != kernels.end():

--------- beginning of crash

2020-08-04 15:47:45.939 6283-6307/com.baidu.paddlex.lite.demo A/libc: Fatal signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x0 in tid 6307 (Predictor Worke), pid 6283 (ddlex.lite.demo)
2020-08-04 15:47:46.014 6350-6350/? A/DEBUG: *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
2020-08-04 15:47:46.014 6350-6350/? A/DEBUG: Build fingerprint: 'ZTE/GEN_CN_P671S20/P671S20:9/PPR1.180610.011/20190613.133443:user/release-keys'
2020-08-04 15:47:46.014 6350-6350/? A/DEBUG: Revision: '0'
2020-08-04 15:47:46.014 6350-6350/? A/DEBUG: ABI: 'arm64'
2020-08-04 15:47:46.014 6350-6350/? A/DEBUG: pid: 6283, tid: 6307, name: Predictor Worke >>> com.baidu.paddlex.lite.demo <<<
2020-08-04 15:47:46.014 6350-6350/? A/DEBUG: signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x0
2020-08-04 15:47:46.014 6350-6350/? A/DEBUG: Cause: null pointer dereference
2020-08-04 15:47:46.014 6350-6350/? A/DEBUG: Abort message: '[F 8/ 4 15:47:45.938 ...evelop/Paddle-Lite/lite/api/light_api.cc:160 BuildRuntimeProgram] Check failed: it != kernels.end():
'
2020-08-04 15:47:46.014 6350-6350/? A/DEBUG: x0 00000000000000a0 x1 00000070eafd8680 x2 00000070eae00000 x3 0000000000000009
2020-08-04 15:47:46.014 6350-6350/? A/DEBUG: x4 00000000000001d8 x5 0000000000000088 x6 287273746f6d6827 x7 7f7f7f7f7f7f7f7f
2020-08-04 15:47:46.014 6350-6350/? A/DEBUG: x8 aef3bf7daac75721 x9 aef3bf7daac75721 x10 00000000000001d8 x11 0000000000000000
2020-08-04 15:47:46.014 6350-6350/? A/DEBUG: x12 0000000000000018 x13 0000000000000000 x14 00000000ffffffff x15 00000071053fb008
2020-08-04 15:47:46.014 6350-6350/? A/DEBUG: x16 00000071a03b1be0 x17 00000071a0345920 x18 00000071053fa89a x19 00000071053fb918
2020-08-04 15:47:46.014 6350-6350/? A/DEBUG: x20 00000071053fb8d0 x21 00000070eb5b4880 x22 0000000000000000 x23 00000071053fb8e8
2020-08-04 15:47:46.014 6350-6350/? A/DEBUG: x24 00000071053fb860 x25 00000070eaddd370 x26 00000071053fb950 x27 00000071053fb888
2020-08-04 15:47:46.014 6350-6350/? A/DEBUG: x28 0000000000000003 x29 00000071053fbbc0
2020-08-04 15:47:46.014 6350-6350/? A/DEBUG: sp 00000071053fb760 lr 00000070eb5504f4 pc 00000070eb5504f4
2020-08-04 15:47:46.015 6350-6350/? A/DEBUG: backtrace:
2020-08-04 15:47:46.015 6350-6350/? A/DEBUG: #00 pc 00000000001814f4 /data/app/com.baidu.paddlex.lite.demo-7Yi5Uj2UgyxrBKM_4aXIOw==/lib/arm64/libpaddle_lite_jni.so (paddle::lite::LightPredictor::BuildRuntimeProgram(paddle::lite::cpp::ProgramDesc const&)+4688)
2020-08-04 15:47:46.448 6353-6353/? E/AEE_AED: no valid package list
2020-08-04 15:47:46.451 654-654/? E//system/bin/tombstoned: Tombstone written to: /data/tombstones/tombstone_04
2020-08-04 15:47:46.470 436-436/? E/lowmemorykiller: Error writing /proc/6283/oom_score_adj; errno=22
2020-08-04 15:47:46.486 1069-1154/? E/InputDispatcher: channel '70077ce com.baidu.paddlex.lite.demo/com.baidu.paddlex.lite.demo.MainActivity (server)' ~ Channel is unrecoverably broken and will be disposed!
2020-08-04 15:47:46.486 1069-1154/? E/InputDispatcher: channel '43a0cd0 com.baidu.paddlex.lite.demo/com.baidu.paddlex.lite.demo.MainActivity (server)' ~ Channel is unrecoverably broken and will be disposed!
2020-08-04 15:47:46.549 23262-23284/? E/R-Loader-UNREAD: updateUnreadApps time:3
2020-08-04 15:47:46.552 23262-23284/? E/R-Loader-UNREAD: onUnreadInfoChange cname:com.android.messaging/com.android.messaging.ui.conversationlist.ConversationListActivity#UserHandle{0} unread old 0 unread new 0
2020-08-04 15:47:46.553 23262-23262/? E/Launcher.Model: onUpdateDynamicIcon-updateDynamicIcon2
2020-08-04 15:47:46.556 23262-23284/? E/R-Loader: isNotificationEnable pkg's res com.android.messaging/true/10061
2020-08-04 15:47:46.556 23262-23284/? E/Launcher.Model: Model is not Loaded ,can not start the update task!
2020-08-04 15:47:46.557 23262-25413/? E/PcModeManagerProxy: invokeSafe: public int com.zte.pcmode.PCModeManager.getPCDisplayID()
java.lang.NullPointerException: null receiver
at java.lang.reflect.Method.invoke(Native Method)
at com.zte.b.a.a(PcModeManagerProxy.java:57)
at com.zte.b.a.b(PcModeManagerProxy.java:62)
at com.zte.b.a.d(PcModeManagerProxy.java:99)
at com.zte.b.a.e(PcModeManagerProxy.java:125)
at com.android.systemui.shared.recents.model.RecentsTaskLoadPlan.preloadPlan(RecentsTaskLoadPlan.java:113)
at com.android.quickstep.o.onTaskStackChangedBackground(RecentsModel.java:217)
at com.android.systemui.shared.system.TaskStackChangeListeners.onTaskStackChanged(TaskStackChangeListeners.java:83)
at android.app.ITaskStackListener$Stub.onTransact(ITaskStackListener.java:50)
at android.os.Binder.execTransact(Binder.java:739)
2020-08-04 15:47:46.561 23262-23284/? E/R-Loader-UNREAD: onUnreadInfoChange cname:com.android.contacts/com.android.contacts.activities.DialtactsActivity#UserHandle{0} unread old 0 unread new 0
2020-08-04 15:47:46.564 23262-23284/? E/R-Loader: isNotificationEnable pkg's res com.android.contacts/true/10057
2020-08-04 15:47:46.564 23262-23284/? E/Launcher.Model: Model is not Loaded ,can not start the update task!
2020-08-04 15:47:46.566 23262-23284/? E/R-Loader-UNREAD: onUnreadInfoChange cname:com.zte.softdabjjc/com.zte.softda.moa.StartActivity#UserHandle{0} unread old 0 unread new 0
2020-08-04 15:47:46.569 23262-23284/? E/R-Loader: isNotificationEnable pkg's res com.zte.softdabjjc/true/10196
2020-08-04 15:47:46.569 23262-23284/? E/Launcher.Model: Model is not Loaded ,can not start the update task!
2020-08-04 15:47:46.571 23262-23284/? E/R-Loader-UNREAD: onUnreadInfoChange cname:com.android.calendar/com.android.calendar.AllInOneActivity#UserHandle{0} unread old 0 unread new 0
2020-08-04 15:47:46.573 23262-23284/? E/R-Loader: isNotificationEnable pkg's res com.android.calendar/true/10101
2020-08-04 15:47:46.573 23262-23284/? E/Launcher.Model: Model is not Loaded ,can not start the update task!
2020-08-04 15:47:46.575 23262-23284/? E/R-Loader-UNREAD: onUnreadInfoChange cname:com.android.settings/com.android.settings.Settings#UserHandle{0} unread old 1 unread new 1
2020-08-04 15:47:46.577 23262-23284/? E/R-Loader: isNotificationEnable pkg's res com.android.settings/true/1000
2020-08-04 15:47:46.577 23262-23284/? E/Launcher.Model: Model is not Loaded ,can not start the update task!
2020-08-04 15:48:00.001 1069-1153/? E/MtkDataShapingUtils: Exception openLteGateByDataShaping
2020-08-04 15:48:00.018 23262-23262/? E/Launcher.Model: onUpdateDynamicIcon-updateDynamicIcon2
2020-08-04 15:48:05.992 1069-1153/? E/MtkDataShapingUtils: Exception openLteGateByDataShaping
2020-08-04 15:48:08.899 634-716/? E/storaged: getDiskStats failed with result NOT_SUPPORTED and size 0
2020-08-04 15:48:35.991 1069-1153/? E/MtkDataShapingUtils: Exception openLteGateByDataShaping
2020-08-04 15:49:00.001 1069-1153/? E/MtkDataShapingUtils: Exception openLteGateByDataShaping
2020-08-04 15:49:00.018 23262-23262/? E/Launcher.Model: onUpdateDynamicIcon-updateDynamicIcon2
2020-08-04 15:49:05.992 1069-1153/? E/MtkDataShapingUtils: Exception openLteGateByDataShaping
2020-08-04 15:49:08.900 634-716/? E/storaged: getDiskStats failed with result NOT_SUPPORTED and size 0

paddlex和paddledetection预测视频速度差异过大

在paddlex训练完导出模型后,用下面代码预测视频用时五分钟,用paddledetection中deploy下的infer.py使用该模型预测同一个视频只需要不到一分钟,请问是为什么?

`model = pdx.load_model("model")
capture = cv2.VideoCapture('./new.mp4')
fourcc = cv2.VideoWriter_fourcc('m', 'p', '4', 'v')
video_writer = cv2.VideoWriter(filename='result.mp4', fourcc=fourcc, fps=30, frameSize=(1984, 1080))
while True:
# 取出一帧数据
ret, frame_rgb = capture.read()
if frame_rgb is None:
break

# PaddleX要求的输出是bgr格式
frame_bgr = cv2.cvtColor(frame_rgb, cv2.COLOR_RGB2BGR).astype('float32')

# 进行预测
result = model.predict(frame_bgr)
im = pdx.det.visualize(frame_rgb, result, threshold=0.1,save_dir=None)
video_writer.write(im)
print(result)

capture.release()
video_writer.release()`

GUI出现报错信息

PaddleX GUI: https://www.paddlepaddle.org.cn/paddle/paddleX (请在ISSUE内容中保留此行内容)
你好,在使用GUI训练模型的过程中,出现错误弹窗,信息如下:
QQ截图20200817103251
问题签名:
问题事件名称: APPCRASH
应用程序名: PaddleX.exe
应用程序版本: 0.0.0.0
应用程序时间戳: 5e11d372
故障模块名称: core_avx.pyd
故障模块版本: 0.0.0.0
故障模块时间戳: 5eab45d5
异常代码: 40000015
异常偏移: 00000000029a90f6
OS 版本: 6.1.7601.2.1.0.256.1
区域设置 ID: 2052
其他信息 1: a5bb
其他信息 2: a5bbf364e2c1b6a8c44db4cea7fcffd3
其他信息 3: a7bc
其他信息 4: a7bc62522695259592d4df5465556389

win10系统无法安装paddlex

下载paddlex.exe后点击安装,鼠标转圈后自动退出
使用管理员安装无效果
重启后安装依旧无效果

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.