Giter Site home page Giter Site logo

rknn-toolkit's People

Contributors

airockchip avatar shaoshengsong avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

linuxfanfan

rknn-toolkit's Issues

Can not convert SwinTransformerV2 :(

I have failed to convert SwinTransformerV2 onnx (it works properly, I have tested) model into rknn.

rknn-toolkit versions I have tried: 1.7.3, 1.7.5

My script:

    ...
    # CONFIG
    rknn = RKNN(verbose=True, verbose_file=os.path.join(target_path, 'conversion.log'))
    rknn.config(quantize_input_node=True,
                mean_values=mean,
                std_values=std,
                quantized_dtype='asymmetric_affine-u8',            
                target_platform='rv1126',
                batch_size=100)

    # LOAD 
    ret = rknn.load_onnx(model=onnx_model_file, input_size_list=input_size,
                         inputs=inputs, outputs=outputs)  #..............................SUCCESS
    if ret != 0:
        print('Load ONNX model failed!')
        exit(ret)

    # BUILD RKNN MODEL
    ret = rknn.build(do_quantization=True,   
                     dataset=os.path.join(target_path, 'samples.txt'),
                     pre_compile=False)  #...............................................FAIL
   ... 

conversion.log

mediapipe模型转换失败

操作系统:Ubuntu 18.04_x64
python 版本:3.8.19
rknn-toolkit 版本:1.7.5
target_platform: rv1109

对Mediapipe的 hand_landmark_lite.tflite模型进行转换时,加载tflite模型时报以下错误信息。请问有什么解决方案?

W rknn-toolkit version: 1.7.5
D Using CPPUTILS: True
I Start importing tflite...
I Model: hand_landmark_lite
I Version: 3
I Description: MLIR Converted.
I Subgraphs: 1
D import clients finished
D Convert layer conv_2d
D Convert layer depthwise_conv_2d
D Convert layer conv_2d
D Convert layer conv_2d
D Convert layer max_pool_2d
D Convert layer depthwise_conv_2d
D Convert layer conv_2d
D Convert layer add
D Convert layer conv_2d
D Convert layer depthwise_conv_2d
D Convert layer conv_2d
D Convert layer add
D Convert layer conv_2d
D Convert layer depthwise_conv_2d
D Convert layer conv_2d
D Convert layer conv_2d
D Convert layer depthwise_conv_2d
D Convert layer conv_2d
D Convert layer add
D Convert layer conv_2d
D Convert layer depthwise_conv_2d
D Convert layer conv_2d
D Convert layer conv_2d
D Convert layer depthwise_conv_2d
D Convert layer conv_2d
D Convert layer add
D Convert layer conv_2d
D Convert layer depthwise_conv_2d
D Convert layer conv_2d
D Convert layer add
D Convert layer conv_2d
D Convert layer depthwise_conv_2d
D Convert layer conv_2d
D Convert layer conv_2d
D Convert layer depthwise_conv_2d
D Convert layer conv_2d
D Convert layer add
D Convert layer conv_2d
D Convert layer depthwise_conv_2d
D Convert layer conv_2d
D Convert layer add
D Convert layer conv_2d
D Convert layer depthwise_conv_2d
D Convert layer conv_2d
D Convert layer conv_2d
D Convert layer depthwise_conv_2d
D Convert layer conv_2d
D Convert layer add
D Convert layer conv_2d
D Convert layer depthwise_conv_2d
D Convert layer conv_2d
D Convert layer add
D Convert layer conv_2d
D Convert layer depthwise_conv_2d
D Convert layer conv_2d
D Convert layer add
D Convert layer conv_2d
D Convert layer depthwise_conv_2d
D Convert layer mean
D Convert layer dequantize
D Convert layer dequantize
D Convert layer fully_connected
W Tensor b'model_1/model/conv_handedness/BiasAdd/ReadVariableOp/resource_dequantize' has no buffer, init to zeros.
D Convert layer logistic
D Convert layer dequantize
D Convert layer dequantize
D Convert layer fully_connected
W Tensor b'model_1/model/conv_handflag/BiasAdd/ReadVariableOp/resource_dequantize' has no buffer, init to zeros.
D Convert layer logistic
D Convert layer dequantize
D Convert layer dequantize
D Convert layer fully_connected
W Tensor b'model_1/model/conv_landmarks/BiasAdd/ReadVariableOp/resource_dequantize' has no buffer, init to zeros.
D Convert layer dequantize
D Convert layer dequantize
D Convert layer fully_connected
W Tensor b'model_1/model/conv_world_landmarks/BiasAdd/ReadVariableOp/resource_dequantize' has no buffer, init to zeros.
E Invalid tensor id(2), tensor(@model_1/model/conv_handedness/BiasAdd/ReadVariableOp/resource_dequantize_93:out0)
E Catch exception when loading tflite model: ./hand_landmark_lite.tflite!
E Traceback (most recent call last):
E File "rknn/base/RKNNlib/converter/tflite_loader.py", line 575, in rknn.base.RKNNlib.converter.tflite_loader.ModelParser.parse
E File "rknn/base/RKNNlib/converter/tflite_loader.py", line 546, in rknn.base.RKNNlib.converter.tflite_loader.ModelParser._build_connections
E File "rknn/base/RKNNlib/layer/RKNNlayer.py", line 144, in rknn.base.RKNNlib.layer.RKNNlayer.RKNNLayer.add_input
E File "rknn/base/RKNNlib/layer/RKNNlayer.py", line 26, in rknn.base.RKNNlib.layer.RKNNlayer.IoStruct.add
E File "rknn/api/rknn_log.py", line 323, in rknn.api.rknn_log.RKNNLog.e
E ValueError: Invalid tensor id(2), tensor(@model_1/model/conv_handedness/BiasAdd/ReadVariableOp/resource_dequantize_93:out0)
E Please feedback the detailed log file <log_feedback_to_the_rknn_toolkit_dev_team.log> to the RKNN Toolkit development team.
E You can also check github issues: https://github.com/rockchip-linux/rknn-toolkit/issues

Yolov8 conversion on Ubuntu 22.04 host machine for RK3399PRO Board

I and ollowing this repo to install RKNN-Toolkit on host PC to convert YOLO-V8 Model to RKNN format and deploy on RK3399PRO board. However, I encountered below error while doing so,

WARNING - 'configs' in yaml file is deprecate, rename it as 'config'
W rknn-toolkit version: 1.7.5
WARNING - rknn.api import failed, skip rknn_config_check
========== parser_config ==========
TOOLKIT_MAIN_VERSION: 1
RK_device_platform: RK3399PRO
model_framework: pytorch
verbose: False
quantize: True
dataset: ../../../../../datasets/COCO/coco_subset_10.txt
graph:
  in_0:
    shape: 1,3,640,640
    mean_values: 0
    std_values: 255
    img_type: RGB
config:
  quantized_dtype: asymmetric_affine-u8
  target_platform: RK3399PRO
  quantized_algorithm: normal
  optimization_level: 3
  mean_values: [[0, 0, 0]]
  std_values: [[255, 255, 255]]
  reorder_channel: 0 1 2
pre_compile: online
core_mask: 1
export_rknn:
  export_path: ./model_cvt/RK1808_3399pro/yolov8n_rknnopt_RK1808_3399pro_u8.rknn
model_file_path: yolov8n_rknnopt.torchscript
build:
  do_quantization: True
  dataset: ./../../../../../datasets/COCO/coco_subset_10.txt
qnnpack: False
load:
  model: ./yolov8n_rknnopt.torchscript
  input_size_list: [[3, 640, 640]]
inputs:
  in_0:
    shape: [1, 3, 640, 640]
    mean_values: [0, 0, 0]
    std_values: [255, 255, 255]
    img_type: RGB
outputs:
input_example: [{'in_0': '../../../../../datasets/COCO/val_test/000000000285.jpg'}, {'in_0': '../../  ...
export_pre_compile_path: ./model_cvt/RK1808_3399pro/yolov8n_rknnopt_RK1808_3399pro_u8_precompile.rknn
===================================
---> Create RKNN object
W rknn-toolkit version: 1.7.5
---> Seting RKNN config
---> Loading pytorch model
Traceback (most recent call last):
  File "../../../../../common/rknn_converter/rknn_convert.py", line 99, in <module>
    convert(config_dict, args)
  File "../../../../../common/rknn_converter/rknn_convert.py", line 19, in convert
    rknn = cp.convert()
  File "/home/fazliddin/rock_chip/rknn_model_zoo/common/rknn_converter/phase.py", line 122, in convert
    load_function(**model_config_dict['load'])
  File "/home/fazliddin/.conda/envs/rk3399pro/lib/python3.8/site-packages/rknn/api/rknn.py", line 227, in load_pytorch
    ret = self.rknn_base.load_pytorch(model, input_size_list, inputs, outputs, convert_engine)
  File "rknn/api/rknn_base.py", line 439, in rknn.api.rknn_base.RKNNBase.load_pytorch
  File "/home/fazliddin/.conda/envs/rk3399pro/lib/python3.8/site-packages/rknn/base/acuitylib/__init__.py", line 1, in <module>
    from acuitylib.optimize.optimizer import Optimizer
  File "rknn/base/acuitylib/optimize/optimizer.py", line 9, in init rknn.base.acuitylib.optimize.optimizer
  File "/home/fazliddin/.conda/envs/rk3399pro/lib/python3.8/site-packages/rknn/base/acuitylib/__init__.py", line 1, in <module>
    from acuitylib.optimize.optimizer import Optimizer
ImportError: cannot import name 'Optimizer' from partially initialized module 'acuitylib.optimize.optimizer' (most likely due to a circular import) (/home/fazliddin/.conda/envs/rk3399pro/lib/python3.8/site-packages/rknn/base/acuitylib/optimize/optimizer.cpython-38-x86_64-linux-gnu.so)

Can you please help me with this?

引用存储库

您好,我想引用您这个存储库,但是需要您名字的缩写,请问您可以提供吗,感谢!

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.