実現したいこと
ここに実現したいことを箇条書きで書いてください。
- yolov8でposeモデルを学習させたい
前提
yolov8でposeモデルを学習させる際に、ignoring corrupt image/label: labels require 8 columns eachというエラーがでた
1つの画像内に4つのキーポイントをアノテーションしている
以下のようなtxtデータをもとに学習している
0 0.5 0.5 1.0 1.0 0.7936962750716332 0.44554455445544555 2 0.2492836676217765 0.3787128712871287 2 0.865546218487395 0.5797598627787307 2 0.15472779369627507 0.5272277227722773 2
nc:1
kpt_shape:[4,3]
該当のソースコード
def implant_detect_train(train_yaml, train_model, data_yaml, project_path): # インプラント位置検出のためのカスタムモデル model_train = YOLO(train_yaml).load(train_model) # model_train = YOLO("/workspace/yolov8/weights/yolo8x-seg.pt") # インプラント位置検出 train results = model_train.train( batch=16, # 1batchあたりの画像数 # device= os.environ['CUDA_VISIBLE_DEVICES'].split(), # 使用する機器 device=device, # multi gpuの設定 # data="/workspace/yolov8/yaml/implant_id.yaml", # dataファイルへのパス data=data_yaml, # dataファイルへのパス epochs=500, # epoch数 patience=1000, # 精度向上がないときに停止するepoch数 #pretrained = True, # 事前トレーニングモデルのls hsv_h=0.015, # 画像HSV-Hue拡張 hsv_v = 0.4, # HSV値の増加 hsv_s = 0.7, # HSV-彩度強度 project=project_path, # プロジェクト名 degrees = 180.0, # 画像の回転(+ /-度) 画像拡張 #workers = -1, # データロード用のワーカースレッドの数 # loggers = 'tensorboard', # tensorboardを出力させる # profile = True, # box = 0.05, # segmentationを動かす際には指定しない # augment = True, resume = True, )
発生している問題・エラーメッセージ
ignoring corrupt image/label: labels require 8 columns each
yolov8のtxtファイルの形式は
class_index center_x center_y width hight x1 y1 v1 x2 y2 v2 x3 y3 v3 ... xn yn vn
となっており、
今回はclass_index center_x center_y width hightとキーポイント4×3の17個あるはず、
しかし、ラベルは8列必要ですといったエラーが出る
試したこと
googleなどで調べた
https://github.com/ultralytics/ultralytics/issues/3041

あなたの回答
tips
プレビュー