|
34 | 34 | "PSF = fspecial('gaussian', 7, 10);\n",
|
35 | 35 | "imshow(pixeldup(PSF, 73), []);"
|
36 | 36 | ]
|
| 37 | + }, |
| 38 | + { |
| 39 | + "cell_type": "code", |
| 40 | + "execution_count": 5, |
| 41 | + "metadata": {}, |
| 42 | + "outputs": [ |
| 43 | + { |
| 44 | + "name": "stdout", |
| 45 | + "output_type": "stream", |
| 46 | + "text": [ |
| 47 | + "\n" |
| 48 | + ] |
| 49 | + }, |
| 50 | + { |
| 51 | + "data": { |
| 52 | + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjAAAAGkCAIAAACgjIjwAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAB3RJTUUH4wcBAikzropSagAAACR0RVh0U29mdHdhcmUATUFUTEFCLCBUaGUgTWF0aFdvcmtzLCBJbmMuPFjdGAAAACJ0RVh0Q3JlYXRpb24gVGltZQAwMS1KdWwtMjAxOSAxMDo0MTo1MDdi8BEAAAfLSURBVHic7dc9alVtGIZR/ThFggHlFAop1AFkCAFn5s8cU6VTiMWBhDQhKQLbCbzV1zzXhrVGcBfv3hfP223b3gDAtP+mBwDAmzeCBECEIAGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQcJgesDM/f/789evX9IqFL1++TE9Y+/jx4/SEtfPz8+kJCy8vL9MT1k6n0/SEtT9//kxPWPj+/fuPHz+mV+yPCwmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIOEwPWBnPnz48PXr1+kVC9fX19MT1q6urqYnrB2Px+kJC/f399MT1m5ubqYn7Mn79++nJ+ySCwmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmAhMP0gJ25uLj49OnT9IqFq6ur6Qlr3759m56wdnl5OT1h4e7ubnrCztze3k5PWHj37t30hF1yIQGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJBymB+zM4XA4Pz+fXrFwPB6nJ6xdXl5OT1j7/Pnz9ISFbdumJ6xlH9jZ2dn0hIXDwa/1/3AhAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkHKYH7Mzr6+vz8/P0ioWHh4fpCWt3d3fTE9a2bZuesPD379/pCWvZB/by8jI9YeH19XV6wi65kABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEg7TA3bm6enpdDpNr1i4ubmZnrC2bdv0hLXj8Tg9YeHh4WF6wlr2gTW/x6enp+kJu+RCAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiDhMD1gZx4fH3///j29YmHbtukJa7e3t9MT1s7OzqYnLDw/P09PWDudTtMT1prf4+Pj4/SEXXIhAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkvN22bXoDALiQAGgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIOEfY4FxcWMCLUUAAAAASUVORK5CYII=\n", |
| 53 | + "text/plain": [ |
| 54 | + "<IPython.core.display.Image object>" |
| 55 | + ] |
| 56 | + }, |
| 57 | + "metadata": {}, |
| 58 | + "output_type": "display_data" |
| 59 | + } |
| 60 | + ], |
| 61 | + "source": [ |
| 62 | + "g = checkerboard(8);\n", |
| 63 | + "PSF = fspecial('gaussian', 7, 10);\n", |
| 64 | + "\n", |
| 65 | + "SD = 0.01;\n", |
| 66 | + "g = imnoise(imfilter(g, PSF), 'gaussian', 0, SD ^ 2);\n", |
| 67 | + "\n", |
| 68 | + "INITPSF = ones(size(PSF));\n", |
| 69 | + "LIM = ceil(size(PSF, 1) / 2);\n", |
| 70 | + "NUMIT = 5;\n", |
| 71 | + "DAMPAR = 10 * SD;\n", |
| 72 | + "WEIGHT = zeros(size(g));\n", |
| 73 | + "WEIGHT(LIM + 1:end - LIM, LIM + 1:end - LIM) = 1;\n", |
| 74 | + "[g5, PSF5] = deconvblind(g, INITPSF, NUMIT, DAMPAR, WEIGHT);\n", |
| 75 | + "imshow(pixeldup(PSF5, 73), [])" |
| 76 | + ] |
| 77 | + }, |
| 78 | + { |
| 79 | + "cell_type": "code", |
| 80 | + "execution_count": 7, |
| 81 | + "metadata": {}, |
| 82 | + "outputs": [ |
| 83 | + { |
| 84 | + "name": "stdout", |
| 85 | + "output_type": "stream", |
| 86 | + "text": [ |
| 87 | + "\n" |
| 88 | + ] |
| 89 | + }, |
| 90 | + { |
| 91 | + "data": { |
| 92 | + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjAAAAGkCAIAAACgjIjwAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAB3RJTUUH4wcBAisEJAGV5wAAACR0RVh0U29mdHdhcmUATUFUTEFCLCBUaGUgTWF0aFdvcmtzLCBJbmMuPFjdGAAAACJ0RVh0Q3JlYXRpb24gVGltZQAwMS1KdWwtMjAxOSAxMDo0MzowM3kVnWUAAAfRSURBVHic7ddNalVbFEZRfVzBKxa8iqhgOZAeWLdf/nRRJAhpQCBBb0kNBDyvA7u+5oExWvBxOJvJerxt2yMAmPbf9AAAePRIkACIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEg7TA3bmy5cvX79+nV6xcHFxMT1h7fXr19MT1o7H4/SEhfv7++kJa3d3d9MT1q6vr6cnLHz69Onz58/TK/bHhQRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkHCYHrAzr169uri4mF6x8PHjx+kJa5eXl9MT1k6n0/SEhfP5PD1h7erqanrC2rZt0xMWXr58OT1hl1xIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQcpgfszPPnz9+8eTO9YuHy8nJ6wtqHDx+mJ6y9e/duesLCzc3N9IS1f//+TU9Y+/bt2/SEhWfPnk1P2CUXEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAwmF6wM4cDoenT59Or1h48eLF9IS1t2/fTk9Ye//+/fSEhW3bpiesnU6n6Qlrx+NxesLCkydPpifskgsJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiDhMD1gZx4eHv7+/Tu9YuF8Pk9PWLu5uZmesCfZz5X9wZrv8eHhYXrCLrmQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASDtMDdub379+3t7fTKxaurq6mJ+zM6XSanrBwPp+nJ6z9+PFjesLa3d3d9ISFP3/+TE/YJRcSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmH6QE78+vXr+vr6+kVC9u2TU9Y+/79+/SEtePxOD1h4f7+fnrC2u3t7fSEteZ7/Pnz5/SEXXIhAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkPN62bXoDALiQAGgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIOF/da9xPiKICc8AAAAASUVORK5CYII=\n", |
| 93 | + "text/plain": [ |
| 94 | + "<IPython.core.display.Image object>" |
| 95 | + ] |
| 96 | + }, |
| 97 | + "metadata": {}, |
| 98 | + "output_type": "display_data" |
| 99 | + } |
| 100 | + ], |
| 101 | + "source": [ |
| 102 | + "NUMIT = 10;\n", |
| 103 | + "[g10, PSF10] = deconvblind(g, INITPSF, NUMIT, DAMPAR, WEIGHT);\n", |
| 104 | + "imshow(pixeldup(PSF10, 73), [])" |
| 105 | + ] |
| 106 | + }, |
| 107 | + { |
| 108 | + "cell_type": "code", |
| 109 | + "execution_count": 8, |
| 110 | + "metadata": {}, |
| 111 | + "outputs": [ |
| 112 | + { |
| 113 | + "name": "stdout", |
| 114 | + "output_type": "stream", |
| 115 | + "text": [ |
| 116 | + "\n" |
| 117 | + ] |
| 118 | + }, |
| 119 | + { |
| 120 | + "data": { |
| 121 | + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjAAAAGkCAIAAACgjIjwAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAB3RJTUUH4wcBAisS0NUgtgAAACR0RVh0U29mdHdhcmUATUFUTEFCLCBUaGUgTWF0aFdvcmtzLCBJbmMuPFjdGAAAACJ0RVh0Q3JlYXRpb24gVGltZQAwMS1KdWwtMjAxOSAxMDo0MzoxOPfcdawAAAftSURBVHic7ddLapXdFoZR92EH7wQCsr00QARbI6J90Yq2x4I2xxYEFUGDopEY83dglU5lPh+M0YK3sFgPc3d1dXUNAKb9b3oAAFy7JkgARAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAn76QEb8+bNm7dv306vWHjx4sX0hLUHDx5MT1i7ffv29ISF8/Pz6Qlrnz9/np6w9v79++kJC69evXr9+vX0iu1xIQGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJAgSAAmCBECCIAGQIEgAJOynB2zM06dPX758Ob1i4dmzZ9MT1g6Hw/SEtePj4+kJC2dnZ9MT1r58+TI9Ye3y8nJ6wsLjx4+nJ2ySCwmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmAhP30gI25e/fuo0ePplcs3L9/f3rC2r1796YnrJ2cnExPWDg6OpqesPbv37/pCWuHw2F6wsKdO3emJ2ySCwmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIGE/PWBjjo6Obt68Ob1i4fj4eHrC2snJyfSEtcPhMD1h4fLycnrC2p8/f6YnrN24cWN6wsJ+72v9f7iQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAASBAmABEECIEGQAEgQJAAS9tMDNubi4uLXr1/TKxbOzs6mJ6xdv359esKWfPv2bXrCWvaBnZ+fT09Y+Pv37/SETXIhAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAkCBIACYIEQIIgAZAgSAAk7KcHbMyPHz9OT0+nVyx8+vRpesLabrebnrB2cXExPWHh+/fv0xPWvn79Oj1hrfnyf/78OT1hk1xIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACTspwdszMePHz98+DC9YmG3201PWHv48OH0hLVbt25NT1j4/fv39IS109PT6Qlr7969m56w8OTJk+fPn0+v2B4XEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAgiABkCBIACQIEgAJggRAwu7q6mp6AwC4kABoECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiBBkABIECQAEgQJgARBAiDhP0EpaGgJPpa1AAAAAElFTkSuQmCC\n", |
| 122 | + "text/plain": [ |
| 123 | + "<IPython.core.display.Image object>" |
| 124 | + ] |
| 125 | + }, |
| 126 | + "metadata": {}, |
| 127 | + "output_type": "display_data" |
| 128 | + } |
| 129 | + ], |
| 130 | + "source": [ |
| 131 | + "NUMIT = 20;\n", |
| 132 | + "[g20, PSF20] = deconvblind(g, INITPSF, NUMIT, DAMPAR, WEIGHT);\n", |
| 133 | + "imshow(pixeldup(PSF20, 73), [])" |
| 134 | + ] |
37 | 135 | }
|
38 | 136 | ],
|
39 | 137 | "metadata": {
|
|
0 commit comments