KBA-231226181840
1. वातावरण सेटअप करा
१.१. Nvidia ड्राइव्हर आणि CUDA स्थापित करा
१.२. संबंधित पायथन लायब्ररी स्थापित करा
python3 -m pip install –upgrade –ignore-install pip
python3 -m pip install -ignore-install gdown
python3 -m pip install -ignore-installed opencv-python
python3 -m pip install –ignore-installed torch==1.9.1+cu111 torchvision==0.10.1+cu111 torchaudio==0.9.1 -f https://download.pytorch.org/whl/torch_stable.html
python3 -m pip install -ignore-install jax
python3 -m pip install -ignore-install ftfy
python3 -m pip install -ignore-install torchinfo
python3 -m pip install –ignore-installed https://github.com/quic/aimet/releases/download/1.25.0/AimetCommon-torch_gpu_1.25.0-cp38-cp38-linux_x86_64.whl
python3 -m pip install –ignore-installed https://github.com/quic/aimet/releases/download/1.25.0/AimetTorch-torch_gpu_1.25.0-cp38-cp38-linux_x86_64.whl
python3 -m pip install -ignore-installed numpy==1.21.6
python3 -m pip install -ignore-install psutil
१.३. क्लोन aimet-मॉडेल-प्राणीसंग्रहालय
git क्लोन https://github.com/quic/aimet-model-zoo.git
cd aimet-मॉडेल-प्राणीसंग्रहालय
git checkout d09d2b0404d10f71a7640a87e9d5e5257b028802
निर्यात PYTHONPATH=${PYTHONPATH}:${PWD}
१.४. सेट1.4 डाउनलोड करा
wget https://uofi.box.com/shared/static/igsnfieh4lz68l926l8xbklwsnnk8we9.zip
unzip igsnfieh4lz68l926l8xbklwsnnk8we9.zip
1.5. ओळ 39 aimet-model-zoo/aimet_zoo_torch/quicksrnet/dataloader/utils.py सुधारित करा
बदल
glob.glob(os.path.join(test_images_dir, “*”) मधील img_path साठी):
करण्यासाठी
glob.glob(os.path.join(test_images_dir, “*_HR.*”) मध्ये img_path साठी):
१.६. मूल्यांकन चालवा.
# YOURPATH/aimet-model-run अंतर्गत चालवा
# quicksrnet_small_2x_w8a8 साठी
python3 aimet_zoo_torch/quicksrnet/evaluators/quicksrnet_quanteval.py \
–model-config quicksrnet_small_2x_w8a8 \
–डेटासेट-पथ ../Set14/image_SRF_4
# quicksrnet_small_4x_w8a8 साठी
python3 aimet_zoo_torch/quicksrnet/evaluators/quicksrnet_quanteval.py \
–model-config quicksrnet_small_4x_w8a8 \
–डेटासेट-पथ ../Set14/image_SRF_4
# quicksrnet_medium_2x_w8a8 साठी
python3 aimet_zoo_torch/quicksrnet/evaluators/quicksrnet_quanteval.py \
–मॉडेल-कॉन्फिगरेशन quicksrnet_medium_2x_w8a8 \
–डेटासेट-पथ ../Set14/image_SRF_4
# quicksrnet_medium_4x_w8a8 साठी
python3 aimet_zoo_torch/quicksrnet/evaluators/quicksrnet_quanteval.py \
–मॉडेल-कॉन्फिगरेशन quicksrnet_medium_4x_w8a8 \
–डेटासेट-पथ ../Set14/image_SRF_4
समजा तुम्हाला नक्कल केलेल्या मॉडेलसाठी PSNR व्हॅल्यू मिळेल. QuickSRNet च्या विविध आकारासाठी तुम्ही मॉडेल-कॉन्फिगरेशन बदलू शकता, पर्याय underaimet-modelzoo/aimet_zoo_torch/quicksrnet/model/model_cards/ आहे.
2 पॅच जोडा
२.१. "ONNX Steps REVISED.docx वर निर्यात करा" उघडा
२.२. गिट कमिट आयडी वगळा
२.३. कलम 2.3 कोड
संपूर्ण 1. कोड शेवटच्या ओळीखाली (ओळ 366 नंतर) जोडा aimet-model-zoo/aimet_zoo_torch/quicksrnet/model/models.py
२.४. कलम 2.4 आणि 2 कोड
ओळ 2 aimet-model-zoo/aimet_zoo_torch/quicksrnet/evaluators/quicksrnet_quanteval.py अंतर्गत संपूर्ण 3, 93 कोड जोडा
२.५. फंक्शन लोड_मॉडेल मधील प्रमुख पॅरामीटर्स
मॉडेल = लोड_मॉडेल(MODEL_PATH_INT8,
MODEL_NAME,
MODEL_ARGS.get(MODEL_NAME).get(MODEL_CONFIG),
use_quant_sim_model=सत्य,
encoding_path=ENCODING_PATH,
quantsim_config_path=CONFIG_PATH,
calibration_data=IMAGES_LR,
use_cuda = खरे,
before_quantization=सत्य,
convert_to_dcr=True)
MODEL_PATH_INT8 = aimet_zoo_torch/quicksrnet/model/weights/quicksrnet_small_2x_w8a8/pre_opt_weights
MODEL_NAME = QuickSRNetSmall
MODEL_ARGS.get(MODEL_NAME).get(MODEL_CONFIG) = {'स्केलिंग_फॅक्टर': 2}
ENCODING_PATH = aimet_zoo_torch/quicksrnet/model/weights/quicksrnet_small_2x_w8a8/adaround_encodings
CONFIG_PATH = aimet_zoo_torch/quicksrnet/model/weights/quicksrnet_small_2x_w8a8/aimet_config
कृपया QuickSRNet च्या भिन्न आकारासाठी चल बदला
2.6 मॉडेल आकारात बदल
- aimet-model-zoo/aimet_zoo_torch/quicksrnet/model/model_cards/*.json मध्ये “इनपुट_शेप”
- aimet-model-zoo/aimet_zoo_torch/quicksrnet/model/inference.py मध्ये इनसाइड फंक्शन load_model(…)
- Export_to_onnx(…, input_height, input_width) मधील पॅरामीटर "ONNX Steps REVISED.docx वर निर्यात करा"
2.7 ONNX मॉडेल निर्यात करण्यासाठी 1.6 पुन्हा चालवा
3. SNPE मध्ये रूपांतरित करा
3.1. रूपांतरित करा
${SNPE_ROOT}/bin/x86_64-linux-clang/snpe-onnx-to-dlc \
–input_network model.onnx \
-quantization_overrides ./model.encodings
३.२. (पर्यायी) फक्त क्वांटाइज्ड DLC काढा
(पर्यायी) snpe-dlc-quant –input_dlc model.dlc –float_fallback –override_params
३.३. (महत्त्वाचे) ONNX I/O NCHW च्या क्रमाने आहे; रूपांतरित DLC क्रमाने NHWC आहे
कागदपत्रे / संसाधने
![]() |
Qualcomm Aime Efficiency Toolkit डॉक्युमेंटेशन [pdf] सूचना quicksrnet_small_2x_w8a8, quicksrnet_small_4x_w8a8, quicksrnet_medium_2x_w8a8, quicksrnet_medium_4x_w8a8, Aimet Efficiency Toolkit डॉक्युमेंटेशन, Efficiency Toolkit Documentation, Documentation Documentation, Toolkit |