請我喝杯咖啡☕
*備忘錄:
- 我的帖子解釋了CocoDetection()使用帶有captions_train2014.json、instances_train2014.json和person_keypoints_train2014.json的train2014、帶有captions_val2014.json、instances_val2014.json和person_keypoints_val2014.json的val2014以及帶有image_info_test2014.json的test2017, image_info_test2015.json 和 image_info_test-dev2015.json。
- 我的帖子解釋了CocoDetection()使用train2017與captions_train2017.json,instances_train2017.json和person_keypoints_train2017.json,val2017與captions_ val2017.json,instances_val2017.json和person_keypoints_val2017.json和test2017與image_info_test2017.json和image_info_test-dev2017.json.
- 我的帖子解釋了 MS COCO。
CocoDetection() 可以使用 MS COCO 資料集,如下所示。 *這是針對有 stuff_train2017.json 的 train2017、帶有 stuff_val2017.json 的 val2017、帶有 stuff_train2017.json 的 stuff_train2017_pixelmaps、帶有 stuff_val2017.json_train2017_pixelmaps、帶有 stuff_val2017.json panoptic_train2017.json 的 panoptic_train2017、帶有 panoptic_train2017.json 的 panoptic_val2017 panoptic_val2017.json 和 unlabeled2017 以及 image_info_labed2017.
from torchvision.datasets import CocoDetection stf_train2017_data = CocoDetection( root="data/coco/imgs/train2017", annFile="data/coco/anns/stuff_trainval2017/stuff_train2017.json" ) stf_val2017_data = CocoDetection( root="data/coco/imgs/val2017", annFile="data/coco/anns/stuff_trainval2017/stuff_val2017.json" ) len(stf_train2017_data), len(stf_val2017_data) # (118287, 5000) # pms_stf_train2017_data = CocoDetection( # root="data/coco/anns/stuff_trainval2017/stuff_train2017_pixelmaps", # annFile="data/coco/anns/stuff_trainval2017/stuff_train2017.json" # ) # Error # pms_stf_val2017_data = CocoDetection( # root="data/coco/anns/stuff_trainval2017/stuff_val2017_pixelmaps", # annFile="data/coco/anns/stuff_trainval2017/stuff_val2017.json" # ) # Error # pan_train2017_data = CocoDetection( # root="data/coco/anns/panoptic_trainval2017/panoptic_train2017", # annFile="data/coco/anns/panoptic_trainval2017/panoptic_train2017.json" # ) # Error # pan_val2017_data = CocoDetection( # root="data/coco/anns/panoptic_trainval2017/panoptic_val2017", # annFile="data/coco/anns/panoptic_trainval2017/panoptic_val2017.json" # ) # Error unlabeled2017_data = CocoDetection( root="data/coco/imgs/unlabeled2017", annFile="data/coco/anns/unlabeled2017/image_info_unlabeled2017.json" ) len(unlabeled2017_data) # 123403 stf_train2017_data[2] # (<pil.image.image image mode="RGB" size="640x428">, # [{'segmentation': {'counts': 'W2a0S2Q1T7mNmHS1R7mN...0100000000', # 'size': [428, 640]}, 'area': 112666.0, 'iscrowd': 0, 'image_id': 30, # 'bbox': [0.0, 0.0, 640.0, 321.0], 'category_id': 119, 'id': 10000010}, # {'segmentation': ..., 'category_id': 124, 'id': 10000011}, # ... # {'segmentation': ..., 'category_id': 183, 'id': 10000014}]) stf_train2017_data[47] # (<pil.image.image image mode="RGB" size="640x427">, # [{'segmentation': {'counts': '\\j1h0[<a0g2n001o0...00001o0000 ... stf_train2017_data image mode="RGB" size="480x640">, # [{'segmentation': {'counts': '0[9e:1O000000O100000...O5mc0F^Zj7', # 'size': [640, 480]}, 'area': 20503.0, 'iscrowd': 0, 'image_id': 370, # 'bbox': [0.0, 0.0, 79.0, 316.0], 'category_id': 102, 'id': 10000383}, # {'segmentation': ..., 'category_id': 105, 'id': 10000384}, # ... # {'segmentation': ..., 'category_id': 183, 'id': 10000389}]) stf_val2017_data[2] # (<pil.image.image image mode="RGB" size="640x483">, # [{'segmentation': {'counts': '\9g5]9O1O1O;EU1kNU1...VMKQ?NY`d3', # 'size': [483, 640]}, 'area': 5104.0, 'iscrowd': 0, 'image_id': 632, # 'bbox': [0.0, 300.0, 392.0, 183.0], 'category_id': 93, 'id': 20000017}, # {'segmentation': ..., 'category_id': 128, 'id': 20000018}, # ... # {'segmentation': ..., 'category_id': 183, 'id': 20000020}]) stf_val2017_data[47] # (<pil.image.image image mode="RGB" size="640x480">, # [{'segmentation': {'counts': '[da7T1X>D3M2J5M4M4LoQg1', # 'size': [480, 640]}, 'area': 122.0, 'iscrowd': 0, 'image_id': 5001, # 'bbox': [515.0, 235.0, 7.0, 36.0], 'category_id': 104, 'id': 20000247}, # {'segmentation': ..., 'category_id': 105, 'id': 20000248}, # ... # {'segmentation': ..., 'category_id': 183, 'id': 20000256}]) stf_val2017_data[64] # (<pil.image.image image mode="RGB" size="640x483">, # [{'segmentation': {'counts': 'UN020mN]B2e>N1O...Mb@N^?2hd2', # 'size': [500, 375]}, 'area': 2404.0, 'iscrowd': 0, 'image_id': 6763, # 'bbox': [0.0, 235.0, 369.0, 237.0], 'category_id': 105, 'id': 20000356}, # {'segmentation': ..., 'category_id': 123, 'id': 20000357}, # ... # {'segmentation': ..., 'category_id': 183, 'id': 20000362}]) unlabeled2017_data[2] # (<pil.image.image image mode="RGB" size="640x427">, []) unlabeled2017_data[47] # (<pil.image.image image mode="RGB" size="428x640">, []) unlabeled2017_data[64] # (<pil.image.image image mode="RGB" size="640x480">, []) import matplotlib.pyplot as plt from matplotlib.patches import Polygon, Rectangle import numpy as np from pycocotools import mask # `show_images1()` doesn't work very well for the images with # segmentations so for it, use `show_images2()` which # more uses the original coco functions. def show_images1(data, ims, main_title=None): file = data.root.split('/')[-1] fig, axes = plt.subplots(nrows=1, ncols=3, figsize=(14, 8)) fig.suptitle(t=main_title, y=0.9, fontsize=14) for i, axis in zip(ims, axes.ravel()): if data[i][1] and "segmentation" in data[i][1][0]: im, anns = data[i] axis.imshow(X=im) axis.set_title(label=anns[0]["image_id"]) ec = ['g', 'r', 'c', 'm', 'y', 'w'] ec_index = 0 for ann in anns: seg = ann['segmentation'] compressed_rld = mask.decode(rleObjs=seg) y_plts, x_plts = np.nonzero(a=np.squeeze(a=compressed_rld)) axis.plot(x_plts, y_plts, alpha=0.4) x, y, w, h = ann['bbox'] rect = Rectangle(xy=(x, y), width=w, height=h, linewidth=3, edgecolor=ec[ec_index], facecolor='none', zorder=2) ec_index += 1 if ec_index == len(ec)-1: ec_index = 0 axis.add_patch(p=rect) elif not data[i][1]: im, _ = data[i] axis.imshow(X=im) fig.tight_layout() plt.show() ims = (2, 47, 64) show_images1(data=stf_train2017_data, ims=ims, main_title="stf_train2017_data") show_images1(data=stf_val2017_data, ims=ims, main_title="stf_val2017_data") show_images1(data=unlabeled2017_data, ims=ims, main_title="unlabeled2017_data") def show_images2(data, index, main_title=None): img_set = data[index] img, img_anns = img_set if img_anns and "segmentation" in img_anns[0]: img_id = img_anns[0]['image_id'] coco = data.coco def show_image(imgIds, areaRng=[], iscrowd=None, draw_bbox=False): plt.figure(figsize=(11, 8)) plt.imshow(X=img) plt.suptitle(t=main_title, y=1, fontsize=14) plt.title(label=img_id, fontsize=14) anns_ids = coco.getAnnIds(imgIds=img_id, areaRng=areaRng, iscrowd=iscrowd) anns = coco.loadAnns(ids=anns_ids) coco.showAnns(anns=anns, draw_bbox=draw_bbox) plt.show() show_image(imgIds=img_id, draw_bbox=True) show_image(imgIds=img_id, draw_bbox=False) show_image(imgIds=img_id, iscrowd=False, draw_bbox=True) show_image(imgIds=img_id, areaRng=[0, 5000], draw_bbox=True) elif not img_anns: plt.figure(figsize=(11, 8)) plt.imshow(X=img) plt.suptitle(t=main_title, y=1, fontsize=14) plt.show() show_images2(data=stf_val2017_data, index=47, main_title="stf_train2017_data") </pil.image.image></pil.image.image></pil.image.image></pil.image.image></pil.image.image></pil.image.image></a0g2n001o0...00001o0000></pil.image.image></pil.image.image>顯示_圖像1():
以上是PyTorch 中的 CocoDetection (3)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

ForhandlinglargedatasetsinPython,useNumPyarraysforbetterperformance.1)NumPyarraysarememory-efficientandfasterfornumericaloperations.2)Avoidunnecessarytypeconversions.3)Leveragevectorizationforreducedtimecomplexity.4)Managememoryusagewithefficientdata

Inpython,ListSusedynamicMemoryAllocationWithOver-Asalose,而alenumpyArraySallaySallocateFixedMemory.1)listssallocatemoremoremoremorythanneededinentientary上,respizeTized.2)numpyarsallaysallaysallocateAllocateAllocateAlcocateExactMemoryForements,OfferingPrediCtableSageButlessemageButlesseflextlessibility。

Inpython,YouCansspecthedatatAtatatPeyFelemereModeRernSpant.1)Usenpynernrump.1)Usenpynyp.dloatp.dloatp.ploatm64,formor professisconsiscontrolatatypes。

NumPyisessentialfornumericalcomputinginPythonduetoitsspeed,memoryefficiency,andcomprehensivemathematicalfunctions.1)It'sfastbecauseitperformsoperationsinC.2)NumPyarraysaremorememory-efficientthanPythonlists.3)Itoffersawiderangeofmathematicaloperation

Contiguousmemoryallocationiscrucialforarraysbecauseitallowsforefficientandfastelementaccess.1)Itenablesconstanttimeaccess,O(1),duetodirectaddresscalculation.2)Itimprovescacheefficiencybyallowingmultipleelementfetchespercacheline.3)Itsimplifiesmemorym

SlicingaPythonlistisdoneusingthesyntaxlist[start:stop:step].Here'showitworks:1)Startistheindexofthefirstelementtoinclude.2)Stopistheindexofthefirstelementtoexclude.3)Stepistheincrementbetweenelements.It'susefulforextractingportionsoflistsandcanuseneg

numpyallowsforvariousoperationsonArrays:1)basicarithmeticlikeaddition,減法,乘法和division; 2)evationAperationssuchasmatrixmultiplication; 3)element-wiseOperations wiseOperationswithOutexpliitloops; 4)

Arresinpython,尤其是Throughnumpyandpandas,weessentialFordataAnalysis,offeringSpeedAndeffied.1)NumpyArseNable efflaysenable efficefliceHandlingAtaSetSetSetSetSetSetSetSetSetSetSetsetSetSetSetSetsopplexoperationslikemovingaverages.2)


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

禪工作室 13.0.1
強大的PHP整合開發環境

Atom編輯器mac版下載
最受歡迎的的開源編輯器

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器