Skip to content
This repository was archived by the owner on Jan 23, 2022. It is now read-only.

Commit 1913d17

Browse files
author
SunYufei
committed
Update: 2019/07/01
1 parent 93a2013 commit 1913d17

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

65 files changed

+2603
-0
lines changed

Chapter 4/4.10.ipynb

Lines changed: 98 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,104 @@
3434
"PSF = fspecial('gaussian', 7, 10);\n",
3535
"imshow(pixeldup(PSF, 73), []);"
3636
]
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+
]
37135
}
38136
],
39137
"metadata": {

Chapter 4/4.11.ipynb

Lines changed: 621 additions & 0 deletions
Large diffs are not rendered by default.

Chapter 6/6.1.ipynb

Lines changed: 200 additions & 0 deletions
Large diffs are not rendered by default.

Chapter 6/6.2.ipynb

Lines changed: 162 additions & 0 deletions
Large diffs are not rendered by default.

Chapter 6/6.4.ipynb

Lines changed: 187 additions & 0 deletions
Large diffs are not rendered by default.

Chapter 6/6.5.ipynb

Lines changed: 277 additions & 0 deletions
Large diffs are not rendered by default.

0 commit comments

Comments
 (0)