add for hw5
This commit is contained in:
1 parent
12e68927ad
commit
6bbb9aeeae
6 files changed
+246
No files matched your search
Binary file not shown.
Binary file not shown.
|
After Width: | Height: | Size: 1.6 MiB |
Binary file not shown.
|
After Width: | Height: | Size: 4.5 MiB |
Binary file not shown.
@@ -0,0 +1,246 @@
|
||||
{
|
||||
"cells": [
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 23,
|
||||
"id": "83d218b3",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"from PIL import Image\n",
|
||||
"import matplotlib.pyplot as plt\n",
|
||||
"import matplotlib.font_manager as fm\n",
|
||||
"import numpy as np\n",
|
||||
"\n",
|
||||
"fm.fontManager.addfont(\"D2Coding.ttc\")\n",
|
||||
"\n",
|
||||
"plt.rcParams[\"font.family\"] = \"D2Coding\""
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "18a0d48b",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"# Linear Algebra Homework 5: Image Resampling\n",
|
||||
"\n",
|
||||
"이미지를 읽고, 그걸 Bilinear Interpolation을 이용하여 Resampling 하면 된다.\n",
|
||||
"\n",
|
||||
"사용할 이미지는 아래와 같다. $(h, w) = (1000, 1000)$"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"id": "de8bc631",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"image/png": "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 truncated
|
||||
"text/plain": [
|
||||
"<Figure size 640x480 with 1 Axes>"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
"output_type": "display_data"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"img = Image.open(\"image.png\")\n",
|
||||
"\n",
|
||||
"img_arr = np.array(img)\n",
|
||||
"\n",
|
||||
"def img_crop(arr: np.ndarray, from_h, to_h, from_w, to_w):\n",
|
||||
" h, w, _ = arr.shape\n",
|
||||
" return arr[int(h * from_h): int(h * to_h), int(w * from_w): int(w * to_w), :]\n",
|
||||
"\n",
|
||||
"plt.imshow(img)\n",
|
||||
"\n",
|
||||
"plt.show()"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "284a3fd6",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"## Bilinear Interpolation Method\n",
|
||||
"\n",
|
||||
"두 방향으로 두번의 선형 보간을 거치는 방법이다.\n",
|
||||
"\n",
|
||||
"구현은 아래와 같이 하였다."
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 25,
|
||||
"id": "9ac0b16e",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"def bilinear_interpolation(arr: np.ndarray, new_h, new_w):\n",
|
||||
" h, w, c = arr.shape\n",
|
||||
" resized_arr = np.zeros((new_h, new_w, c), dtype=arr.dtype)\n",
|
||||
"\n",
|
||||
" for i in range(new_h):\n",
|
||||
" for j in range(new_w):\n",
|
||||
" x = i * (h - 1) / (new_h - 1)\n",
|
||||
" y = j * (w - 1) / (new_w - 1)\n",
|
||||
"\n",
|
||||
" x1 = int(x)\n",
|
||||
" x2 = min(x1 + 1, h - 1)\n",
|
||||
" y1 = int(y)\n",
|
||||
" y2 = min(y1 + 1, w - 1)\n",
|
||||
"\n",
|
||||
" a = x - x1\n",
|
||||
" b = y - y1\n",
|
||||
"\n",
|
||||
" for k in range(c):\n",
|
||||
" resized_arr[i, j, k] = (\n",
|
||||
" (1 - a) * (1 - b) * arr[x1, y1, k]\n",
|
||||
" + a * (1 - b) * arr[x2, y1, k]\n",
|
||||
" + (1 - a) * b * arr[x1, y2, k]\n",
|
||||
" + a * b * arr[x2, y2, k]\n",
|
||||
" )\n",
|
||||
" return resized_arr"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "e1da510d",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"위에 제시된 이미지를 2배 scale하여 $(h', w') = (2000, 2000)$이 되도록 리샘플링해주었다."
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"id": "f26d84ae",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"img_new_arr = bilinear_interpolation(img_arr, int(img_arr.shape[0] * 2), int(img_arr.shape[1] * 2))\n",
|
||||
"Image.fromarray(img_new_arr).save(\"image_bilinear.png\")"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "46906ed9",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"결과 이미지:"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 40,
|
||||
"id": "2bd0f55e",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"image/png": "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 truncated
|
||||
"text/plain": [
|
||||
"<Figure size 640x480 with 1 Axes>"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
"output_type": "display_data"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"plt.imshow(img_new_arr)\n",
|
||||
"plt.show()"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "012b87cf",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"## 결과"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 42,
|
||||
"id": "10657605",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAzIAAAGfCAYAAACEKOc0AAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjcsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvTLEjVAAAAAlwSFlzAAAPYQAAD2EBqD+naQAA35BJREFUeJzsvXm4JVV1979qOPOdum9P9EA30ALNJAqKOEDUmNcpKolBg0KDccZfFCIBHAJoFIgGMUGUmDiBMYgvioRXIxgQpxZlUKAB6abn+c7DGatq//5o7qm1V921+96mgXv1+3me+zyn7qph165de5869V3f7RljDAEAAAAAAADALMJ/tgsAAAAAAAAAANMFDzIAAAAAAACAWQceZAAAAAAAAACzDjzIAAAAAAAAAGYdeJABAAAAAAAAzDrwIAMAAAAAAACYdeBBBgAAAAAAADDrwIMMAAAAAAAAYNaBBxkAAAAAAADArAMPMuBp4Xvf+x7dcsst+719FEV07bXX0v33338ASwUAAGBsbIyuvvpqWr9+/X7vY926dXT11VfT+Pj4ASwZAABMDzzIgDbj4+P07ne/m+bOnUuVSoVe85rX0IYNG6a9n8HBQfqLv/gLOu2002hwcHC/yvLf//3fdO6559I555yzX9vvi9e//vXkeR55nkcf+9jHpr39XXfd1d6e/911110HvrDPAP/xH/9BRx11FBWLRVqyZAm99a1vpUaj8WwXCwAwDXhfVCwW6eSTT6af/exnmfX+/d//nc477zz6u7/7u0zsAx/4QHsfb3/729VjffjDH6bzzjuPvvzlLx/Qc3imOJB9+Gc+85mn9MPd0813vvOd9vktXbp0v/ezZcsWevvb305xHB+Qcr397W+nP/mTP5ny+l/72tcmvWYbN248IOV5JkmShK688ko69NBDqVgs0ooVK+j973//s12sWQkeZECbD33oQ3TrrbfSjTfeSHfffTcNDQ3R61//ekqSZFr7mTNnDn3qU5+iyy+/nObMmbNfZXnFK15BH/jAB+iyyy7br+33xVe+8hXasGEDLVmyZL+2f9GLXkQbNmxoD3rf+ta3aMOGDfSiF73oAJbymeHaa6+ld7/73XT22WfTAw88QP/+7/9O69evp1qt9mwXDQAwTa644grasGED3XPPPXTIIYfQa17zGlq3bp21zpvf/GZ697vfTR/+8Icz23/iE5+gDRs20EknneQ8zt/93d/Ru9/9bjr99NMPaPmfKQ5kH/73f//3tGfPngNcwgPHa1/7WtqwYQN98IMffEr7+fGPf0zf/OY3yRhzgEo2Pd785jfThg0b6IYbbiAiop/+9Ke0YcOGp/Rw9mxx0UUX0WWXXUYf/ehH6be//S199rOfpd/85jfPdrFmJeGzXQAwM6hWq/SNb3yDPvvZz9KrXvUqIiL64he/SM973vPo7rvvntavJkREF1988VMqT1dXF/3rv/7rU9qHiwULFhARURju3y0w8QtKFEVERLRo0SJasWLFgSreM0az2aRLLrmE3vnOd9Lf//3fExHRkUceSa9+9avJ87xnuXQAgOnS29vb7ouuueYa+ta3vkXf+973rIeWpUuX0nXXXTfp9nPnzqW5c+dSsVh0HudlL3sZvexlLztg5X6m+UPpw6dCuVymFStWUE9Pz7NdlKdER0cHdXR0tB/Mly5dOiuv2c6dO+nqq6+myy67jP7mb/6GiIiOOOII+su//MtnuWSzE7yRAURE9Nvf/paazSadeuqp7f8df/zx1N3dTb/+9a/b/1uxYgVdffXV9OlPf5oWL15MnZ2d9LKXvYy2bdtGRHvlBhOveyfrYJrNJr3//e+nrq4uWrx4MV1//fUUhiF97Wtfa69z4okntvdx9tlnZ/bheR5de+219LrXvY5KpRI95znPoV/+8pft+GOPPUZ//dd/TUuXLqVyuUzHH3883X777U+9kqbBn/zJn9D73/9+OvTQQ2nlypV055130rJly+jII4+krVu3EhHRPffcQ3/+539OBx10EFUqFXrxi19M9957r7Wfm2++mVauXEnlcpnOPPNMetvb3mY9VI6OjtJ73vMemj9/PhWLRXrlK185LTngr371K+rr66MzzjjD+j9/iJmQYKxdu5be8IY3UGdnJy1atIguuOCC9jrf+MY36PDDD6dCoUBHHHFE+xczIqKNGzeS53l05ZVX0vHHH0+lUolOOeWUp6TPBwDsm4kv6eVyuf2/efPmtfvXSy+9dNr7fOihh5xSrK997WvU1dVFt956Kx1++OFUKpXotNNOs3Jp9tVvTaUPP/vss+lNb3oTff/736ejjjqKSqUSHX300XTHHXdM+5wmY6Lf+ta3vkUvfelLqVgs0vHHH0+///3v2+v8yZ/8SbuvfNe73jWp1OlXv/oVvexlL6NSqUTz5s2jiy++uH1dJuqrp6eHHnnkEXr5y19O5XKZli1bRldddVX7PF/60pfSeeedR11dXbRo0SK68sorrbL++te/phe/+MVUKpVo0aJFdPHFF09L/rVjxw5697vfTStWrKBSqURHHnkkffOb38zUxYTUO5fLked5mR84P/OZz9Chhx5K+XyeVq1albkWN998Mx1yyCHU0dFB55xzDtXr9SmXcSqsWLGCLrjgAlq0aBG94AUvoB/84Ac0b948etGLXkSjo6NERPQ///M/9MpXvpLmz59PXV1d9H/+z//JjEVf/OIXacmSJdTZ2Ul/93d/Ry9/+cut7yI7duygt771rdTT00Plcpn+8i//kvr6+qZczttvv51arZZz3N1XuyAi+uxnP0vLly+nQqFAxx9/PP3P//xPOzYxbn/hC1+g5zznOVQul+nP//zPZ/Sbw/0FDzKAiPbemESUeUW7bNmy9kPKBF/84hfplltuoZtvvpl+/OMf06mnntqWIX30ox+lDRs20Ac+8IFJj3PllVfSDTfcQN/85jfpP//zP+mTn/xkpsO99dZbacOGDXTiiSeq5b3gggvopS99Ka1Zs4aOPPJIestb3tJ+3X3XXXfR/Pnz6Rvf+Ab95je/oVe+8pX0pje9qX2OzxQ33XQTfeMb36BGo0Fve9vb6Bvf+AbV63X61re+RUREt912Gz3vec+jb3/72/SrX/2KVqxYQW94wxvadfnEE0/QW9/6VnrjG99IP//5zymXy9F//dd/Wcd4+9vfTr/85S/p29/+Nt1zzz1ULpfpta997ZTlgBNfHo4++uh9rnvaaafR0UcfTffccw995StfoXw+T0REv/jFL+jss8+mv/7rv6Z77rmH3va2t9FZZ51lPVwSEV1++eX0sY99jO666y4aGxtz6u8BAE+NkZER+tjHPkZz5syh0047rf3/+++/nzZs2ECLFi3ar/0eccQRliRrMsbGxui8886ja6+9lm699Vb6yU9+QldccUU7vq9+a6p9+IMPPkjvec976IorrqB77rmHPvCBD9DY2Nh+nZfG+973Pjr77LPpl7/8JeXz+fYv6ERE//Vf/9XuQyckfVzqtGXLFvrTP/1TOv744+mee+6h66+/nv793/+d/umf/sk6RqvVote85jX0hje8ge699166+uqrrXHxF7/4BW3bto3uvvtuuvDCC+niiy9uf2kdHx+nV7/61bRw4UL62c9+Rp///Ofpmmuuoc985jNTPsf77ruP6vU6XXfddXTvvffSO9/5TjrzzDPbZjtLly6lDRs2tPe5bt062rBhgzUefe5zn6NPfepT9OlPf5oeeOAB+qu/+it67WtfS5s2bSIios2bN9MZZ5xBr371q+lnP/sZLVmyhL73ve9NuYxT5fvf/z7dfPPN9NBDD9H5559Pt9xyC/3ud7+jH/7wh0S092HqNa95Dd1666109913UxRFdPrpp7e/P/z0pz+l97///XTeeefRXXfdRY899hjdfffd7f0nSUKve93raNeuXfTDH/6Q7r77btq2bVvmocTFhg0bqFKp0PLly53rudrFt771LbrooovoggsuoF/96lf0kpe8hN74xje263uCK664gr7whS/QD37wA3rwwQfpb//2b6dczlmDAcAYc/311xsiMo1Gw/r/i170IvM3f/M37eXly5ebjo4O09/f79zfRz/6UbN8+fLM/1esWGEuuOCC9vItt9xiiMh89atfzaz7kpe8xKxevTrzfyIyr33ta9vLd955pyEi8+ijj05alkajYXzfN1/5ylcyseXLl5uPfvSjznNx8fjjjxsiMnfeeaf1/1NPPdWcffbZ7c9/+qd/2v78nve8x7mv//3f/zXGGHPppZeagw46yERRZIwxptlsmoULF5pTTz3VGGPMpk2bDBGZNWvWtPdx3333GSIyP//5z6dU/s985jOGiNrHmIyJ+j3jjDMmjZ9zzjnmec97nvW/E0880bzjHe8wxhizYcMGQ0Tmkksuacf/53/+xxCR2bBhw5TKCQDYN0RkwjA0hULBEJGZM2eO+clPfjLpukuWLLHuScmpp55q3va2t6lxre/76le/aojIfPvb327/b/Xq1eZFL3qRMWb/+q3J+vDVq1cbIjI/+tGP1DJOBe08Jvqt97///da5eZ5narWatS4RmS9/+cuZfV922WVm1apV1v/+9m//1jznOc+x9klE5iMf+cik5Vu9erXp6OgwIyMj7f+dfPLJ7fHl61//ugnD0BqTP/zhD5tDDz00s69LLrnELFmyZNLjSJYuXWr+4R/+wfrfRFlbrVZm/UMOOcRcccUV7eUkSUx3d7f51Kc+ZYwx5vLLLzfz5s2ztl21alV7PJsOt99++6Tjx/Lly82ll17a/vzOd76z/fnyyy937uuJJ54wxhhz9tlnmxe84AXt+J49e0w+n29/F/nJT35ifN8327dvb69z8803GyIy27Ztm1L5zz33XLN06VLnOvtqFy9/+cvNaaed1l6O49gsWLDAfOITnzDGpOM2/2513XXXmXK5bKrV6pTKOVtAjgxwYiZJ6nvLine truncated
|
||||
"text/plain": [
|
||||
"<Figure size 1000x500 with 2 Axes>"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
"output_type": "display_data"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"fig, ax = plt.subplots(1, 2, figsize=(10, 5))\n",
|
||||
"\n",
|
||||
"ax[0].set_title(\"Original Image Crop\")\n",
|
||||
"ax[0].imshow(img_crop(img_arr, 0.2, 0.25, 0.45, 0.5))\n",
|
||||
"\n",
|
||||
"ax[1].set_title(\"Bilinear Interpolated Image Crop\")\n",
|
||||
"ax[1].imshow(img_crop(img_new_arr, 0.2, 0.25, 0.45, 0.5))\n",
|
||||
"\n",
|
||||
"plt.show()"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 49,
|
||||
"id": "f912d7a8",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAzIAAAGfCAYAAACEKOc0AAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjcsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvTLEjVAAAAAlwSFlzAAAPYQAAD2EBqD+naQAA19VJREFUeJzsvXmcHVWZ///cW3fvPd2ddDYSQiAJEAiyi4CK+nUX1EGHLeC4428QRgZwGUBHA6OD6CDKOG6AOoBfEBm+4IAScSGsAQIhQEL2vffuu9et+v0R+tZznurn5HbTkL7web9e/XpV9VPLqapT51Td+jyfE/F93ycAAAAAAAAAqCOi+7oAAAAAAAAAADBW8CIDAAAAAAAAqDvwIgMAAAAAAACoO/AiAwAAAAAAAKg78CIDAAAAAAAAqDvwIgMAAAAAAACoO/AiAwAAAAAAAKg78CIDAAAAAAAAqDvwIgMAAAAAAACoO/AiA14Vfvvb39Kdd9457vVd16Xrr7+eVq5cOYGlAgAAMDw8TNdeey2tW7du3NtYu3YtXXvttZTNZiewZAAAMDbwIgOqZLNZ+vSnP01TpkyhhoYGes973kPr168f83b6+vrowx/+MJ122mnU19c3rrL8z//8D51//vl03nnnjWv9vfH+97+fIpEIRSIR+upXvzrm9ZcvX15dn/8tX7584gv7GvCTn/yEDj74YEqlUjRz5kz6+Mc/TsVicV8XCwAwBnhblEql6Pjjj6e//OUvoeX+67/+iy688EL6p3/6p1DsC1/4QnUbZ511lrqvL33pS3ThhRfSj3/84wk9hteKiWzDv/3tb7+iH+5ebX7zm99Uj2/WrFnj3s7mzZvprLPOokqlMiHlOuuss+itb31rzcv//Oc/H/WabdiwYULK81rieR5dffXVNG/ePEqlUjR37lz6/Oc/v6+LVZfgRQZU+eIXv0h33XUX3XLLLfTggw9Sf38/vf/97yfP88a0nba2NvrmN79Jy5Yto7a2tnGV5e1vfzt94QtfoCuvvHJc6++Nn/70p7R+/XqaOXPmuNY/7rjjaP369dVO79e//jWtX7+ejjvuuAks5WvD9ddfT5/+9Kfp3HPPpSeffJL+67/+i9atW0f5fH5fFw0AMEauuuoqWr9+PT3yyCO0//7703ve8x5au3atscxHP/pR+vSnP01f+tKXQut//etfp/Xr19Oxxx5r3c8//dM/0ac//Wk6/fTTJ7T8rxUT2Yb/8z//M+3evXuCSzhxvPe976X169fTBRdc8Iq284c//IF++ctfku/7E1SysfHRj36U1q9fTzfffDMREf35z3+m9evXv6KXs33FpZdeSldeeSV95Stfoaeeeoq+853v0GOPPbavi1WXxPZ1AcDkIJfL0Y033kjf+c536J3vfCcREf3whz+kI444gh588MEx/WpCRHTZZZe9ovI0NzfTf/zHf7yibdiYOnUqERHFYuO7BUZ+QXFdl4iIurq6aO7cuRNVvNeMUqlEl19+OX3yk5+kf/7nfyYiooULF9K73/1uikQi+7h0AICx0t7eXm2LrrvuOvr1r39Nv/3tb42XllmzZtENN9ww6vpTpkyhKVOmUCqVsu7nxBNPpBNPPHHCyv1a83ppw2shk8nQ3LlzqbW1dV8X5RXR2NhIjY2N1RfzWbNm1eU127FjB1177bV05ZVX0j/8wz8QEdGCBQvoIx/5yD4uWX2CLzKAiIieeuopKpVKdPLJJ1f/t2TJEmppaaFHH320+r+5c+fStddeS9/61rdoxowZ1NTURCeeeCJt3bqViPbIDUY+947WwJRKJfr85z9Pzc3NNGPGDLrpppsoFovRz3/+8+oyRx11VHUb5557bmgbkUiErr/+enrf+95H6XSaDjzwQHrooYeq8eeff57+/u//nmbNmkWZTIaWLFlC99133ys/SWPgrW99K33+85+nefPm0fz58+mBBx6g2bNn08KFC2nLli1ERPTII4/QBz7wAZo+fTo1NDTQm9/8Znr88ceN7dx+++00f/58ymQydPbZZ9OZZ55pvFQODQ3RZz7zGers7KRUKkWnnHLKmOSADz/8MHV3d9MZZ5xh/J+/xIxIMFavXk0f/OAHqampibq6uujiiy+uLnPjjTfSQQcdRMlkkhYsWFD9xYyIaMOGDRSJROjqq6+mJUuWUDqdppNOOukV6fMBAHtn5CE9k8lU/9fR0VFtX6+44ooxb/OZZ56xSrF+/vOfU3NzM91111100EEHUTqdptNOO83Ipdlbu1VLG37uuefSqaeeSr/73e/o4IMPpnQ6TYcccgjdf//9Yz6m0Rhpt37961/TW97yFkqlUrRkyRJ64YUXqsu89a1vrbaVn/rUp0aVOj388MN04oknUjqdpo6ODrrsssuq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 truncated
|
||||
"text/plain": [
|
||||
"<Figure size 1000x500 with 2 Axes>"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
"output_type": "display_data"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"fig, ax = plt.subplots(1, 2, figsize=(10, 5))\n",
|
||||
"\n",
|
||||
"ax[0].set_title(\"Original Image Crop\")\n",
|
||||
"ax[0].imshow(img_crop(img_arr, 0.55, 0.60, 0.61, 0.66))\n",
|
||||
"\n",
|
||||
"ax[1].set_title(\"Bilinear Interpolated Image Crop\")\n",
|
||||
"ax[1].imshow(img_crop(img_new_arr, 0.55, 0.60, 0.61, 0.66))\n",
|
||||
"\n",
|
||||
"plt.show()"
|
||||
]
|
||||
}
|
||||
],
|
||||
"metadata": {
|
||||
"kernelspec": {
|
||||
"display_name": "3.12.11",
|
||||
"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.12.11"
|
||||
}
|
||||
},
|
||||
"nbformat": 4,
|
||||
"nbformat_minor": 5
|
||||
}
|
||||
Binary file not shown.
Reference in new issue
Block a user