- 아래 답변은 OpenAI의 GPT-4-Turbo 모델로 자동 생성한 것으로, 정확하지 않을 수 있습니다.
- 잘못된 답변을 보셨다면 댓글로 첨삭 지도 부탁드립니다.
안녕하세요! yolov5 모델을 이용한 추론 결과에서 파일명을 얻고자 하는 문제에 대해 질문해주셨군요. 이해한 바로는, 모델을 통해 추론을 진행한 후, 탐지된 객체들의 좌표는 성공적으로 출력되었지만, 이와 함께 해당 객체들이 포함된 이미지의 파일명도 함께 얻고 싶으신 것 같습니다. 이에 대한 해결 방안을 제시해드리겠습니다.
파일명 얻기
Yolov5 모델의 추론 결과 객체에서 직접 파일명을 얻는 기능은 기본적으로 제공되지 않습니다. 따라서, results
객체와 함께 입력 이미지 경로 목록인 full_paths
를 사용하여 파일명을 얻는 방법을 고려해야 합니다. results
객체에는 추론된 결과물과 관련된 정보가 담겨 있지만, 파일명을 직접적으로 포함하고 있지 않기 때문에, 입력 이미지 경로 목록에서 해당 인덱스를 찾아 파일명을 얻는 방법이 가장 적합합니다.
아래는 full_paths
에서 파일명을 얻는 방법을 포함하여 추론 결과와 함께 파일명을 출력하는 예시 코드입니다.
def print_results_with_filenames(results, full_paths):
# results.xyxy는 각 이미지에 대한 탐지된 객체들의 좌표를 포함하는 텐서 리스트입니다.
for i, xyxy in enumerate(results.xyxy):
# 현재 이미지의 파일명을 얻습니다.
filename = full_paths[i].split('/')[-1] # 경로가 포함된 경우, '/'로 분리 후 마지막 요소 선택
print(f'Filename: {filename}')
# 탐지된 객체들의 좌표를 출력합니다.
for x_min, y_min, x_max, y_max, conf, cls in xyxy:
print(f'Class: {cls}, Coordinates: ({x_min}, {y_min}, {x_max}, {y_max}), Confidence: {conf}')
# 예시 사용법
# results = model(full_paths)
# print_results_with_filenames(results, full_paths)
이 코드는 full_paths
리스트에서 각 이미지 파일의 경로를 순회하며 파일명을 추출하고, 해당 파일명과 함께 각 이미지에 대한 탐지된 객체들의 좌표 및 클래스, 신뢰도를 출력합니다. 파일 경로에서 파일명만을 추출하기 위해 경로를 '/'로 분리하고 마지막 요소를 선택하는 방식을 사용했습니다. 경로 구분자는 운영 체제에 따라 달라질 수 있으므로, 해당 부분은 환경에 맞게 조정해야 할 수 있습니다.
추가적으로 PyTorch와 관련된 더 많은 정보를 얻고 싶으시다면, PyTorch 공식 튜토리얼을 참고하시기 바랍니다. 다음 링크에서 유용한 정보를 찾아보실 수 있습니다:
제 답변이 정확하지 않을 수도 있으니, 추가적인 질문이나 궁금한 점이 있으시면 언제든지 질문해주세요. 도움이 되었기를 바랍니다!
- 답변이 어떠셨나요? 괜찮았다고 생각하신다면 아래 를 한 번 눌러주시길 부탁드려요!