Row 36008
Content Data
This page contains data entry 36008 from the Axioma AXP content repository. The structured data below represents the complete record for this entry.
I tested models and code in [https://github.com/deepcam-cn/FaceQuality](https://github.com/deepcam-cn/FaceQuality)
I converted model to onnx :
import torch import onnx from models.model_resnet import ResNet, FaceQuality import os import argparse parser = argparse.ArgumentParser(description='PyTorch Face Quality test') parser.add_argument('--backbone', default='face_quality_model/backbone.pth', type=str, metavar='PATH', help='path to backbone model') parser.add_argument('--quality', default='face_quality_model/quality.pth', type=str, metavar='PATH', help='path to quality model') parser.add_argument('--database', default='/Users/tulpar/Downloads/_FoundPersons.db', type=str, metavar='PATH', help='path to SQLite database') parser.add_argument('--cpu', dest='cpu', action='store_true', help='evaluate model on cpu') parser.add_argument('--gpu', default=0, type=int, help='index of gpu to run') def load_state_dict(model, state_dict): all_keys = {k for k in state_dict.keys()} for k in all_keys: if k.startswith('module.'): state_dict[k[7:]] = state_dict.pop(k) model_dict = model.state_dict() pretrained_dict = {k: v for k, v in state_dict.items() if k in model_dict and v.size() == model_dict[k].size()} if len(pretrained_dict) == len(model_dict): print("all params loaded") else: not_loaded_keys = {k for k in pretrained_dict.keys() if k not in model_dict.keys()} print("not loaded keys:", not_loaded_keys) model_dict.update(pretrained_dict) model.load_state_dict(model_dict) args = parser.parse_args() # Load the PyTorch models BACKBONE = ResNet(num_layers=100, feature_dim=512) QUALITY = FaceQuality(512 * 7 * 7) if os.path.isfile(args.backbone): print("Loading Backbone Checkpoint '{}'".format(args.backbone)) checkpoint = torch.load(args.backbone, map_location='cpu') load_state_dict(BACKBONE, checkpoint) if os.path.isfile(args.quality): print("Loading Quality Checkpoint '{}'".format(args.quality)) checkpoint = torch.load(args.quality, map_location='cpu') load_state_dict(QUALITY, checkpoint) # Set the models to evaluation mode BACKBONE.eval() QUALITY.eval() # Create a dummy input with the correct shape expected by the model (assuming 3 channels, 112x112 image) dummy_input = torch.randn(1, 3, 112, 112) # Adjust channels and dimensions if your model expects differently # Convert the PyTorch models to ONNX torch.onnx.export(BACKBONE, dummy_input, 'backbone.onnx', opset_version=11) # Specify opset version if needed torch.onnx.export(QUALITY, torch.randn(1, 512 * 7 * 7), 'quality.onnx', opset_version=11) print("Converted models to ONNX successfully!") But the inference code for onnx giving error : how to convert correctly and make the inference /Users/tulpar/Projects/FaceQuality/onnxFaceQualityCalcFoundDb.py Traceback (most recent call last): File "/Users/tulpar/Projects/FaceQuality/onnxFaceQualityCalcFoundDb.py", line 74, in <module> main(parser.parse_args()) File "/Users/tulpar/Projects/FaceQuality/onnxFaceQualityCalcFoundDb.py", line 64, in main face_quality = get_face_quality(args.backbone, args.quality, DEVICE, left_image) File "/Users/tulpar/Projects/FaceQuality/onnxFaceQualityCalcFoundDb.py", line 35, in get_face_quality quality_output = quality_session.run(None, {'input.1': backbone_output[0].reshape(1, -1)}) File "/Users/tulpar/Projects/venv/lib/python3.8/site-packages/onnxruntime/capi/onnxruntime_inference_collection.py", line 192, in run return self._sess.run(output_names, input_feed, run_options) onnxruntime.capi.onnxruntime_pybind11_state.InvalidArgument: [ONNXRuntimeError] : 2 : INVALID_ARGUMENT : Got invalid dimensions for input: input.1 for the following indices index: 1 Got: 512 Expected: 25088 Please fix either the inputs or the model. Process finished with exit code 1
| Field | Value |
|---|---|
| text | I tested models and code in [https://github.com/deepcam-cn/FaceQuality](https://github.com/deepcam-cn/FaceQuality) I converted model to onnx : import torch import onnx from models.model_resnet import ResNet, FaceQuality import os import argparse parser = argparse.ArgumentParser(description='PyTorch Face Quality test') parser.add_argument('--backbone', default='face_quality_model/backbone.pth', type=str, metavar='PATH', help='path to… |
| label | r/pytorch |
| dataType | post |
| communityName | r/pytorch |
| datetime | 2024-05-21 |
| username_encoded | Z0FBQUFBQm5Lak1KdnlFalJHenV1V0NwQWxTX0phMkpKMk1uMUNKUFRaNXZKMkpaeHVQMHd4UWwxMXY1bVl0aUR6dWtuTlhHT002U0x2NU9QY25hWXkwSnJ6Q0xpdzVHbmc5RXBpLW9yR3l0LUNIZ1EwYjliSUE9 |
| url_encoded | Z0FBQUFBQm5Lak9ZSE9QcGp1T2hGNVcyUDlQQlhHQWdISlY3LWd1dHljdHlwUnNQUzFhUElSbWExQW15UFk2ZlNGZUtNRUxVTXlBSkVxZ25kcTdFYVF0ZzNUMG9Ya1Etb2ZjX0w4M3lnYkVKUzNDbmNlUzVFQkRzM09xaV9CdUc5SVU3cjdvc1NQb1FmUGdhSlVFNExWQkxpWF9sbklnbjVOV1FrOVYyb29yVjN6eHBBWXZEazlFWmxkb0UwYnl0a2V4MS1IZGdjN3U4 |
Raw Record
{
"text": "I tested models and code in [https://github.com/deepcam-cn/FaceQuality](https://github.com/deepcam-cn/FaceQuality)\n\nI converted model to onnx :\n\n import torch\n import onnx\n from models.model_resnet import ResNet, FaceQuality\n import os\n import argparse\n \n \n parser = argparse.ArgumentParser(description='PyTorch Face Quality test')\n parser.add_argument('--backbone', default='face_quality_model/backbone.pth', type=str, metavar='PATH',\n help='path to backbone model')\n parser.add_argument('--quality', default='face_quality_model/quality.pth', type=str, metavar='PATH',\n help='path to quality model')\n parser.add_argument('--database', default='/Users/tulpar/Downloads/_FoundPersons.db', type=str, metavar='PATH',\n help='path to SQLite database')\n parser.add_argument('--cpu', dest='cpu', action='store_true',\n help='evaluate model on cpu')\n parser.add_argument('--gpu', default=0, type=int,\n help='index of gpu to run')\n \n \n def load_state_dict(model, state_dict):\n all_keys = {k for k in state_dict.keys()}\n for k in all_keys:\n if k.startswith('module.'):\n state_dict[k[7:]] = state_dict.pop(k)\n model_dict = model.state_dict()\n pretrained_dict = {k: v for k, v in state_dict.items() if k in model_dict and v.size() == model_dict[k].size()}\n if len(pretrained_dict) == len(model_dict):\n print(\"all params loaded\")\n else:\n not_loaded_keys = {k for k in pretrained_dict.keys() if k not in model_dict.keys()}\n print(\"not loaded keys:\", not_loaded_keys)\n model_dict.update(pretrained_dict)\n model.load_state_dict(model_dict)\n \n \n args = parser.parse_args()\n # Load the PyTorch models\n BACKBONE = ResNet(num_layers=100, feature_dim=512)\n QUALITY = FaceQuality(512 * 7 * 7)\n \n if os.path.isfile(args.backbone):\n print(\"Loading Backbone Checkpoint '{}'\".format(args.backbone))\n checkpoint = torch.load(args.backbone, map_location='cpu')\n load_state_dict(BACKBONE, checkpoint)\n \n if os.path.isfile(args.quality):\n print(\"Loading Quality Checkpoint '{}'\".format(args.quality))\n checkpoint = torch.load(args.quality, map_location='cpu')\n load_state_dict(QUALITY, checkpoint)\n \n # Set the models to evaluation mode\n BACKBONE.eval()\n QUALITY.eval()\n \n # Create a dummy input with the correct shape expected by the model (assuming 3 channels, 112x112 image)\n dummy_input = torch.randn(1, 3, 112, 112) # Adjust channels and dimensions if your model expects differently\n # Convert the PyTorch models to ONNX\n torch.onnx.export(BACKBONE, dummy_input, 'backbone.onnx', opset_version=11) # Specify opset version if needed\n torch.onnx.export(QUALITY, torch.randn(1, 512 * 7 * 7), 'quality.onnx', opset_version=11)\n \n print(\"Converted models to ONNX successfully!\")\n \n \n \n \n \n But the inference code for onnx giving error :\n \n \n \n how to convert correctly and make the inference \n \n \n \n \n \n /Users/tulpar/Projects/FaceQuality/onnxFaceQualityCalcFoundDb.py\n Traceback (most recent call last):\n File \"/Users/tulpar/Projects/FaceQuality/onnxFaceQualityCalcFoundDb.py\", line 74, in <module>\n main(parser.parse_args())\n File \"/Users/tulpar/Projects/FaceQuality/onnxFaceQualityCalcFoundDb.py\", line 64, in main\n face_quality = get_face_quality(args.backbone, args.quality, DEVICE, left_image)\n File \"/Users/tulpar/Projects/FaceQuality/onnxFaceQualityCalcFoundDb.py\", line 35, in get_face_quality\n quality_output = quality_session.run(None, {'input.1': backbone_output[0].reshape(1, -1)})\n File \"/Users/tulpar/Projects/venv/lib/python3.8/site-packages/onnxruntime/capi/onnxruntime_inference_collection.py\", line 192, in run\n return self._sess.run(output_names, input_feed, run_options)\n onnxruntime.capi.onnxruntime_pybind11_state.InvalidArgument: [ONNXRuntimeError] : 2 : INVALID_ARGUMENT : Got invalid dimensions for input: input.1 for the following indices\n index: 1 Got: 512 Expected: 25088\n Please fix either the inputs or the model.\n \n Process finished with exit code 1",
"label": "r/pytorch",
"dataType": "post",
"communityName": "r/pytorch",
"datetime": "2024-05-21",
"username_encoded": "Z0FBQUFBQm5Lak1KdnlFalJHenV1V0NwQWxTX0phMkpKMk1uMUNKUFRaNXZKMkpaeHVQMHd4UWwxMXY1bVl0aUR6dWtuTlhHT002U0x2NU9QY25hWXkwSnJ6Q0xpdzVHbmc5RXBpLW9yR3l0LUNIZ1EwYjliSUE9",
"url_encoded": "Z0FBQUFBQm5Lak9ZSE9QcGp1T2hGNVcyUDlQQlhHQWdISlY3LWd1dHljdHlwUnNQUzFhUElSbWExQW15UFk2ZlNGZUtNRUxVTXlBSkVxZ25kcTdFYVF0ZzNUMG9Ya1Etb2ZjX0w4M3lnYkVKUzNDbmNlUzVFQkRzM09xaV9CdUc5SVU3cjdvc1NQb1FmUGdhSlVFNExWQkxpWF9sbklnbjVOV1FrOVYyb29yVjN6eHBBWXZEazlFWmxkb0UwYnl0a2V4MS1IZGdjN3U4"
}
Entry Information
- Entry ID: 36008
- Repository: Axioma AXP
- Dataset: arrmlet/reddit_dataset_36
- Total Entries: 100,000