mirror of
https://github.com/open-mmlab/mmsegmentation.git
synced 2025-06-03 22:03:48 +08:00
199 lines
2.8 MiB
Plaintext
199 lines
2.8 MiB
Plaintext
|
{
|
||
|
"cells": [
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 1,
|
||
|
"metadata": {},
|
||
|
"outputs": [
|
||
|
{
|
||
|
"name": "stderr",
|
||
|
"output_type": "stream",
|
||
|
"text": [
|
||
|
"/opt/anaconda3/envs/pt1.13/lib/python3.10/site-packages/tqdm/auto.py:21: TqdmWarning: IProgress not found. Please update jupyter and ipywidgets. See https://ipywidgets.readthedocs.io/en/stable/user_install.html\n",
|
||
|
" from .autonotebook import tqdm as notebook_tqdm\n"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"data": {
|
||
|
"image/png": "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
|
||
|
"text/plain": [
|
||
|
"<Figure size 1000x1000 with 1 Axes>"
|
||
|
]
|
||
|
},
|
||
|
"metadata": {},
|
||
|
"output_type": "display_data"
|
||
|
},
|
||
|
{
|
||
|
"name": "stdout",
|
||
|
"output_type": "stream",
|
||
|
"text": [
|
||
|
"(512, 1024, 3)\n"
|
||
|
]
|
||
|
}
|
||
|
],
|
||
|
"source": [
|
||
|
"import numpy as np\n",
|
||
|
"import matplotlib.pyplot as plt\n",
|
||
|
"import cv2\n",
|
||
|
"\n",
|
||
|
"import sam # noqa: F401\n",
|
||
|
"from sam.sam_inferencer import SAMInferencer\n",
|
||
|
"\n",
|
||
|
"\n",
|
||
|
"def show_mask(mask, ax, random_color=False):\n",
|
||
|
" if random_color:\n",
|
||
|
" color = np.concatenate([np.random.random(3), np.array([0.6])], axis=0)\n",
|
||
|
" else:\n",
|
||
|
" color = np.array([30/255, 144/255, 255/255, 0.6])\n",
|
||
|
" h, w = mask.shape[-2:]\n",
|
||
|
" mask_image = mask.reshape(h, w, 1) * color.reshape(1, 1, -1)\n",
|
||
|
" ax.imshow(mask_image)\n",
|
||
|
" \n",
|
||
|
"def show_points(coords, labels, ax, marker_size=375):\n",
|
||
|
" pos_points = coords[labels==1]\n",
|
||
|
" neg_points = coords[labels==0]\n",
|
||
|
" ax.scatter(pos_points[:, 0], pos_points[:, 1], color='green', marker='*', s=marker_size, edgecolor='white', linewidth=1.25)\n",
|
||
|
" ax.scatter(neg_points[:, 0], neg_points[:, 1], color='red', marker='*', s=marker_size, edgecolor='white', linewidth=1.25) \n",
|
||
|
" \n",
|
||
|
"def show_box(box, ax):\n",
|
||
|
" x0, y0 = box[0], box[1]\n",
|
||
|
" w, h = box[2] - box[0], box[3] - box[1]\n",
|
||
|
" ax.add_patch(plt.Rectangle((x0, y0), w, h, edgecolor='green', facecolor=(0,0,0,0), lw=2))\n",
|
||
|
"\n",
|
||
|
"image = cv2.imread('../../demo/demo.png')\n",
|
||
|
"image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)\n",
|
||
|
"plt.figure(figsize=(10,10))\n",
|
||
|
"plt.imshow(image)\n",
|
||
|
"plt.axis('on')\n",
|
||
|
"plt.show()\n",
|
||
|
"print(image.shape)"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 2,
|
||
|
"metadata": {},
|
||
|
"outputs": [
|
||
|
{
|
||
|
"name": "stdout",
|
||
|
"output_type": "stream",
|
||
|
"text": [
|
||
|
"Loads checkpoint by http backend from path: https://download.openmmlab.com/mmsegmentation/v0.5/sam/sam_vit-huge-p16_3rdparty_sa1b-1024x1024_20230413-faaf96f6.pth\n"
|
||
|
]
|
||
|
}
|
||
|
],
|
||
|
"source": [
|
||
|
"inferencer = SAMInferencer(arch='huge')\n",
|
||
|
"inferencer.set_image(image)"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 3,
|
||
|
"metadata": {},
|
||
|
"outputs": [
|
||
|
{
|
||
|
"data": {
|
||
|
"image/png": "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
|
||
|
"text/plain": [
|
||
|
"<Figure size 1000x1000 with 1 Axes>"
|
||
|
]
|
||
|
},
|
||
|
"metadata": {},
|
||
|
"output_type": "display_data"
|
||
|
}
|
||
|
],
|
||
|
"source": [
|
||
|
"input_point = np.array([[280, 230], [500, 300]])\n",
|
||
|
"input_label = np.array([1, 1])\n",
|
||
|
"plt.figure(figsize=(10,10))\n",
|
||
|
"plt.imshow(image)\n",
|
||
|
"show_points(input_point, input_label, plt.gca())\n",
|
||
|
"plt.axis('on')\n",
|
||
|
"plt.show() "
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 4,
|
||
|
"metadata": {},
|
||
|
"outputs": [
|
||
|
{
|
||
|
"data": {
|
||
|
"image/png": "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VMc/efJk9/tznvOci27z3Oc+t/u9pXAtsMACCzwiPt+WzgILLPCXB/MRjZSSPulJT1JAf+/3fu+Cbf/hP/yHCui/+Tf/Rt/73vc+bETj8Y9/fPd9v9/Xw4cPq4h0n1199dV62223XbBf0zT6ohe9qNsO0PX1de31egc+Ox8PF9H4t//23yqgzjn92Z/92c/qOc3jzzOisbS0pIB++7d/+2d9jA9+8IN67bXXdtfsnNPDhw8feKavfe1rL9jvh37oh7rvRUQ3NjY6LzygN910k+7u7l6wXzumbrzxRv3hH/7hbv9Dhw6p9/7AO3rnO9+pGxsb3TGLotDl5eXu77Is9Zd+6Zcuel9tBO6zeQ+33XZbt++b3/zmS2739V//9Qro8573vEd9jkthfp698IUvvOg2t99+e3d9H/zgBx/1OU6dOnXZEQ3nnN55552P+hwLLLDAX08sIhoLLLDAZwUR4X/5X/4XAF7/+tcf+G44HPLmN78Z51y3zcPhxhtv5I1vfCP33HMP4/GYs2fPMplMeNe73sVzn/tcHnjgAb7927/9gv3e9KY38c53vpN+v88v/uIvHuCVnzp1it/6rd/iW77lWy7rflSVH/iBH+BHf/RH6fV6/Pqv/zrf//3ff1n7/kVB63V+85vfzK/+6q92CcGXi/vuu48Xv/jF3HfffVx77bX82q/9Gnt7e5w9e5bxeMwtt9zCq171Ko4dO3Zgv5/92Z/lta99LQD/+B//Yx588EG2trbY2dnhta99LSEE3vOe9/C93/u9lzz3Bz/4QV7zmtfwIz/yI5w6dYpz584xHA67yNnHP/5x/ubf/Jtsb2/zvd/7vdx6662Mx2P29/e55557ePnLX05VVXzP93wPH/jABx7VfT8SPvGJT3S/P+MZz7jkdu13t95662N27ptvvpk777wTgH/0j/7RRbd5//vfD0BRFDzrWc/it3/7t3nhC1/IoUOHGAwGXH/99fzTf/pPL1nx7fjx413uxr/9t/+W//gf/2MXtajrmre+9a1813d9FwCveMUruO666x6z+1tggQX+iuPzbekssMACf3kwH9FQVb333nvVOafLy8u6t7fXbff6179eAX3Ri16kqvqIEY2Hw97enl5xxRUK6Pve974D333f932fAvqP//E/flTHPD+iMZ1O9SUveUkXEXnve9/7qI73cPjzjGjcfPPNGkLoznfllVfqS17yEv33//7f63ve8x7d399/2P1f9rKXKaBHjhzRe++997LOORqN9PDhwwrot33bt110m//7//6/u2v6wAc+cOC7dkwB+sM//MOXPM9NN92kgP7oj/7oJbf5Z//snymgf+tv/a0LvvtcIhrz17+zs3PJ7V73utd1283Ph88F3/Ed39G9k+l0etFt/tW/+lcK6PHjx/Vf/It/0V3D2tqaDgaD7u+VlRV929vedtFjnDt3Tl/84hdfEB10zimgz3zmM/UXfuEXHpN7WmCBBf76YBHRWGCBBT5rXHvttbzwhS/sIhgt3vCGNwDwD//hP/ycz7GyssKNN94IzDy3LTY2NgA+p/r+u7u7fN3XfR1vfvObueqqq/j93//9Ll/gLxtuvPFG3v72t/PUpz4VsOfy5je/mX/5L/8lN910E4cOHeIbv/Eb+f3f//0L9h0Oh/z6r/86AP/qX/0rrr3
|
||
|
"text/plain": [
|
||
|
"<Figure size 1000x1000 with 1 Axes>"
|
||
|
]
|
||
|
},
|
||
|
"metadata": {},
|
||
|
"output_type": "display_data"
|
||
|
},
|
||
|
{
|
||
|
"data": {
|
||
|
"image/png": "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
|
||
|
"text/plain": [
|
||
|
"<Figure size 1000x1000 with 1 Axes>"
|
||
|
]
|
||
|
},
|
||
|
"metadata": {},
|
||
|
"output_type": "display_data"
|
||
|
},
|
||
|
{
|
||
|
"data": {
|
||
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAxoAAAGyCAYAAABjkLL4AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy88F64QAAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOz9e/xtV1nfi7+fMcaca63vbd93kp2EQAgQELAIAiolGEERreivWsR6OWrV1h4rSItaeVUqp60cW+AcPed4QQX7k5ut9Yf+FCQkqaB4gXINhhBy3cm+7+913eacYzznj2fMudZ3X5IdCFLb9cnrm/39rjXvc4xnPJfP8zyiqsoCCyywwAILLLDAAgsssMCjCPelvoAFFlhggQUWWGCBBRZY4H88LAyNBRZYYIEFFlhggQUWWOBRx8LQWGCBBRZYYIEFFlhggQUedSwMjQUWWGCBBRZYYIEFFljgUcfC0FhggQUWWGCBBRZYYIEFHnUsDI0FFlhggQUWWGCBBRZY4FHHwtBYYIEFFlhggQUWWGCBBR51LAyNBRZYYIEFFlhggQUWWOBRx8LQWGCBBRZYYIEFFlhggQUedSwMjQUWWOB/OrzgBS9ARHjta1/7pb6UBRZYYIEFFvgfFgtDY4EFFrhkvPa1r0VEup93vOMdD7vPN33TN+3a55577vniX+iXCHVd82u/9mv8yI/8CM95znO4+uqrGQwGLC0t8fjHP57v+q7v4qabbvqiX8enP/1p/tk/+2d8+Zd/OXv27KEsS44cOcIznvEM/uE//If88i//MnfccccX/Tr+R8SJEyd41atexZOe9CQGgwH79+/n7/7dv8ub3/xmVPULOnaMkf/4H/8jL3rRizh48CC9Xo+rrrqKl7/85XzoQx+66H5vectbds2xh/t561vfeknXs76+zpEjR7r9Fob5Agss8EgRvtQXsMACC/ztxW/+5m/ynd/5nRf9/sEHH+S9733v3+AVfWmxubnJD//wD3d/iwh79+5la2uLu+66i7vuuou3v/3tfN/3fR9vfvObCeHRF8G/8Au/wL/8l/+Spmm6z/bu3cvGxgbHjh3jYx/7GG9729u44YYbuPXWWx/18/+PjI985CN8wzd8A2fOnAFgZWWF7e1tPvjBD/LBD36Q//Sf/hPvfve7KcvyER97Z2eHb/u2b+sMUe89a2trHDt2jHe84x28613v4ud//uf5F//iX5y372Aw4LLLLnvI429tbTEejwH4yq/8yku6ple+8pUcO3bsEd7JAgsssMAMi4jGAgss8Ihx8OBBlpeXuemmmzh69OhFt/ut3/otYow89rGP/Zu7uC8her0eP/ZjP8Y73/lO7rnnHqbTKWfPnqWqKj75yU92Rtlb3/pW/v2///eP+vl/93d/l1e/+tU0TcPzn/98/viP/5jxeMz6+jqj0YijR4/y9re/nW//9m//vJTh/5mxubnJN3/zN3PmzBmuv/56/uqv/ort7W2GwyG/9Eu/RFEUvPe97+UVr3jF53X8H/qhH+Kmm27COce//bf/lvX1dc6ePcvp06d59atfTUqJV7/61bz73e8+b9+XvexlHD9+/CF/Hv/4xwPw3Oc+l6c85SkPez3vfe97eetb38pXf/VXf173s8ACCywAgC6wwAILXCJ+9md/VgG95ppr9Pu+7/sU0Ne97nUX3f6JT3yiAvra175WAQX07rvv/pu74IvghhtuUEB/9md/9m/0vCkl/eqv/moF9LrrrnvUj98e+6lPfarWdf2Q245Go0f9/P8j4zWveY0COhgM9K677jrv+3/7b/+tAuq918985jOP6Nif+MQnuvnxile84oLbvOxlL+vGTYzxER3/z//8z7vjv/nNb37Y7be2tvQxj3mMlmWpt912W7fv3/R8WWCBBf72YxHRWGCBBT4vfP/3fz9g/PAL4YMf/CB33HEH1157Lc9//vMf8lif+tSneO1rX8uNN97I4x//eAaDAWtrazzjGc/gNa95DadPn77ovk3T8Ku/+qu84AUv4ODBgxRFwYEDB3jSk57Ey172Mn7913/9Ed/bW9/6VoqiQET4mZ/5mUe8/8UgIjznOc8BeMhI0OeLj33sYwC85CUveVha1mAwuOh3w+GQN7zhDdxwww0cPHiQsiy56qqruOGGG/gP/+E/cOLEiQvud+utt/Id3/EdXHnllfR6PQ4ePMjXfd3X8Zu/+ZvEGC+4T5v384IXvACA//yf/zNf//Vfz+HDh3HOnZcXcOrUKV7zmtfwjGc8gz179tDv97n22mv5wR/8QW677baHvOcvBL/1W78FwHd+53fyuMc97rzvf+zHfoyVlRVijPz2b//2Izr2H/7hH3a/X4gaBfDqV78agDvvvJMPfvCDj+j47RxYWVnhZS972cNu/5M/+ZPcd999/NRP/dQlRT8WWGCBBS6KL7Wls8ACC/ztwXxEI6Wkj3/84xXQ//pf/+t52/7AD/yAAvpzP/dzessttzxkROOaa67pvu/3+7p//34Vke6zK6+8Um+//fbz9muaRl/0ohd12wG6Z88e7fV6uz47Fw8V0fh3/+7fKaDOOf2lX/qlz+s5XQwxRn3Oc56jgH7Zl33Zo3psVdWlpSUF9Lu+67s+72N85CMf0auvvrp7ds453b9//65n+sY3vvG8/V75yld234uI7t27V7333Wc33nijbm1tnbdfO6ZuuOEG/Ymf+Ilu/3379qn3ftc7et/73qd79+7tjlkUhS4vL3d/l2Wpb33rWy94X20E7vNZ9m6//fZu33e9610X3e4bv/EbFdDnPve5j+j4/+Sf/JNu7F4Mw+GwmxM/8zM/c8nH3tnZ0dXVVQX0H/2jf/Sw2996660qInr99dfrZDJRVV1ENBZYYIHPG4uIxgILLPB5QUT4X/6X/wWA3/iN39j13XA45F3vehfOuW6bh8INN9zAW97yFu69917G4zFnzpxhMplw00038exnP5sHHniA7/qu7zpvv7e//e28733vo9/v8+Y3v5nt7W02NjYYj8ecOHGC3/3d3+Xbv/3bL+l+VJUf//Ef56d/+qfp9Xq8853v5J/+0396Sfs+HM6cOcMHPvABvu3bvo2/+Iu/AOBVr3rVo3LseTz72c8G4F3vehdve9vbSCk9ov3vv/9+vuEbvoH777+fq6++mne84x1sb29z5swZxuMxt912G6997Ws5dOjQrv1+6Zd+iTe+8Y0A/PAP/zAPPvgg6+vrbG5u8sY3vpEQAjfffDM/9EM/dNFzf+QjH+ENb3gDP/mTP8mJEyc4e/Ysw+Gwi5x98pOf5Fu+5VvY2Njgh37oh/j0pz/NeDxmZ2eHe++9lx/90R+lqip+8Ad/kA9/+MOP6L4fDp/61Ke635/61KdedLv2u09/+tOf13ke6n2llLqqVp/85Ccv+Zjvete72N7eBuAf/aN/9JDbjsfjbptf/dVfpdfrXfJ5FlhggQUuiC+1pbPAAgv87cF8RENV9b777lPnnC4vL+v29na33W/8xm8ooC960YtUVR82ovFQ2N7e1ssuu0wB/cAHPrDru9YT/MM//MOP6JjnRjSm06n+g3/wDzqv8i233PKIjnchtJGRc39WVlYuGBF4NHDrrbdqCKE71+WXX67/4B/8A/3f//f/XW+++Wbd2dl5yP2/+7u/WwE9cOCA3nfffZd0ztFopPv371dAX/7yl19wm//z//w/u2v68Ic/vOu7dkwB+hM/8RMXPc+NN96ogP70T//0Rbf5Z//snymgL33pS8/77guJaMxf/+bm5kW3e9Ob3tRtNz8fHg6vf/3ru/3uueeeC27zoQ99qNvmWc961iUf+2u+5mu6vJ2HQxtROnc+teddRDQWWGCBR4pFRGOBBRb4vHH11Vfzwhe+sItgtPjN3/xNAH7gB37gCz7HysoKN9xwA8B53PS9e/cCcPz48c/7+FtbW7z4xS/mXe96F1dccQV/8id/0uULfCFYWVnhsssu49ChQ4gIAEtLS7zuda/jB3/wB7/g418IN9xwA+95z3t40pOeBNhzede73sWrX/1qbrzxRvbt28c3fdM38Sd/8ifn7TscDnn
|
||
|
"text/plain": [
|
||
|
"<Figure size 1000x1000 with 1 Axes>"
|
||
|
]
|
||
|
},
|
||
|
"metadata": {},
|
||
|
"output_type": "display_data"
|
||
|
}
|
||
|
],
|
||
|
"source": [
|
||
|
"masks, scores, logits = inferencer.predict(\n",
|
||
|
" point_coords=input_point,\n",
|
||
|
" point_labels=input_label,\n",
|
||
|
" multimask_output=True,\n",
|
||
|
")\n",
|
||
|
"for i, (mask, score) in enumerate(zip(masks, scores)):\n",
|
||
|
" plt.figure(figsize=(10,10))\n",
|
||
|
" plt.imshow(image)\n",
|
||
|
" show_mask(mask, plt.gca(), random_color=True)\n",
|
||
|
" show_points(input_point, input_label, plt.gca())\n",
|
||
|
" plt.title(f\"Mask {i+1}, Score: {score:.3f}\", fontsize=18)\n",
|
||
|
" plt.axis('off')\n",
|
||
|
" plt.show()"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": null,
|
||
|
"metadata": {},
|
||
|
"outputs": [],
|
||
|
"source": []
|
||
|
}
|
||
|
],
|
||
|
"metadata": {
|
||
|
"kernelspec": {
|
||
|
"display_name": "pt1.13",
|
||
|
"language": "python",
|
||
|
"name": "python3"
|
||
|
},
|
||
|
"language_info": {
|
||
|
"codemirror_mode": {
|
||
|
"name": "ipython",
|
||
|
"version": 3
|
||
|
},
|
||
|
"file_extension": ".py",
|
||
|
"mimetype": "text/x-python",
|
||
|
"name": "python",
|
||
|
"nbconvert_exporter": "python",
|
||
|
"pygments_lexer": "ipython3",
|
||
|
"version": "3.10.9"
|
||
|
},
|
||
|
"orig_nbformat": 4
|
||
|
},
|
||
|
"nbformat": 4,
|
||
|
"nbformat_minor": 2
|
||
|
}
|