├── Image Segmentation using Watershed.ipynb ├── ImageSegmentationLung.ipynb ├── ImageSegmentationLung.pdf ├── LICENSE ├── README.md ├── lung_cancer.jpeg └── water_coins.jpg /Image Segmentation using Watershed.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": {}, 6 | "source": [ 7 | "### Image Segmentation using OpenCV" 8 | ] 9 | }, 10 | { 11 | "cell_type": "markdown", 12 | "metadata": {}, 13 | "source": [ 14 | "1. Using watershed Algorithm \n", 15 | "\n", 16 | "Steps :\n", 17 | "\n", 18 | " 1. Otsu's binarization - Find threshold - See Fig. 1.1\n", 19 | " 2. Sure foreground - erode (removes boundary pixels) - See Fig 1.2\n", 20 | " 3. Sure background - dilate (increases object boundary to background) - See Fig. 1.3" 21 | ] 22 | }, 23 | { 24 | "cell_type": "code", 25 | "execution_count": 2, 26 | "metadata": {}, 27 | "outputs": [], 28 | "source": [ 29 | "# import necessary modules\n", 30 | "import numpy as np\n", 31 | "import cv2, matplotlib.pyplot as plt\n", 32 | "%matplotlib inline" 33 | ] 34 | }, 35 | { 36 | "cell_type": "code", 37 | "execution_count": 11, 38 | "metadata": {}, 39 | "outputs": [ 40 | { 41 | "data": { 42 | "text/plain": [ 43 | "" 44 | ] 45 | }, 46 | "execution_count": 11, 47 | "metadata": {}, 48 | "output_type": "execute_result" 49 | }, 50 | { 51 | "data": { 52 | "image/png": "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\n", 53 | "text/plain": [ 54 | "
" 55 | ] 56 | }, 57 | "metadata": {}, 58 | "output_type": "display_data" 59 | } 60 | ], 61 | "source": [ 62 | "# read image and show\n", 63 | "img = cv2.imread('water_coins.jpg') # in BGR mode\n", 64 | "# convert to RGB mode\n", 65 | "img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)\n", 66 | "\n", 67 | "plt.axis('off')\n", 68 | "plt.imshow(img)" 69 | ] 70 | }, 71 | { 72 | "cell_type": "markdown", 73 | "metadata": {}, 74 | "source": [ 75 | "#### Step 1 : Calculating Otsu's binarization (pixel value is either 0 or 1)\n", 76 | "\n", 77 | "```python\n", 78 | "if(pixel_value > threshold):\n", 79 | " pixel_value = 1\n", 80 | "else:\n", 81 | " pixel_value = 0\n", 82 | "```" 83 | ] 84 | }, 85 | { 86 | "cell_type": "code", 87 | "execution_count": 17, 88 | "metadata": {}, 89 | "outputs": [ 90 | { 91 | "name": "stdout", 92 | "output_type": "stream", 93 | "text": [ 94 | "Threshold limit: 157.0\n" 95 | ] 96 | }, 97 | { 98 | "data": { 99 | "text/plain": [ 100 | "" 101 | ] 102 | }, 103 | "execution_count": 17, 104 | "metadata": {}, 105 | "output_type": "execute_result" 106 | }, 107 | { 108 | "data": { 109 | "image/png": "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\n", 110 | "text/plain": [ 111 | "
" 112 | ] 113 | }, 114 | "metadata": {}, 115 | "output_type": "display_data" 116 | } 117 | ], 118 | "source": [ 119 | "# performing otsu's binarization\n", 120 | "# convert to gray scale first\n", 121 | "gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)\n", 122 | "ret, thresh = cv2.threshold(gray, 0, 255, cv2.THRESH_BINARY_INV + cv2.THRESH_OTSU)\n", 123 | "print(\"Threshold limit: \" + str(ret))\n", 124 | "\n", 125 | "plt.axis('off')\n", 126 | "plt.imshow(thresh, cmap = 'gray')" 127 | ] 128 | }, 129 | { 130 | "cell_type": "code", 131 | "execution_count": 18, 132 | "metadata": {}, 133 | "outputs": [], 134 | "source": [ 135 | "# noise removal\n", 136 | "kernel = np.ones((3, 3), np.uint8)\n", 137 | "opening = cv2.morphologyEx(thresh, cv2.MORPH_OPEN, kernel, iterations = 2)\n", 138 | "\n", 139 | "# sure background area\n", 140 | "sure_bg = cv2.dilate(opening, kernel, iterations = 3)\n", 141 | "\n", 142 | "# sure foreground area\n", 143 | "dist_transform = cv2.distanceTransform(opening,cv2.DIST_L2,5)\n", 144 | "ret, sure_fg = cv2.threshold(dist_transform,0.7*dist_transform.max(),255,0)\n", 145 | "\n", 146 | "# Finding unknown region\n", 147 | "sure_fg = np.uint8(sure_fg)\n", 148 | "unknown = cv2.subtract(sure_bg,sure_fg)" 149 | ] 150 | }, 151 | { 152 | "cell_type": "code", 153 | "execution_count": 42, 154 | "metadata": {}, 155 | "outputs": [ 156 | { 157 | "data": { 158 | "image/png": "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\n", 159 | "text/plain": [ 160 | "
" 161 | ] 162 | }, 163 | "metadata": {}, 164 | "output_type": "display_data" 165 | } 166 | ], 167 | "source": [ 168 | "f, (ax1, ax2, ax3) = plt.subplots(1, 3, sharey=True)\n", 169 | "ax1.imshow(sure_bg, cmap = 'gray')\n", 170 | "ax1.set_title('Sure background, dilated')\n", 171 | "\n", 172 | "ax2.imshow(sure_fg, cmap = 'gray')\n", 173 | "ax2.set_title('Sure foreground, eroded')\n", 174 | "\n", 175 | "ax3.imshow(unknown, cmap = 'gray')\n", 176 | "ax3.set_title('Subtract image')\n", 177 | "\n", 178 | "# fine tuning \n", 179 | "f.subplots_adjust(wspace=15.9)" 180 | ] 181 | }, 182 | { 183 | "cell_type": "code", 184 | "execution_count": null, 185 | "metadata": {}, 186 | "outputs": [], 187 | "source": [] 188 | } 189 | ], 190 | "metadata": { 191 | "kernelspec": { 192 | "display_name": "Python 3", 193 | "language": "python", 194 | "name": "python3" 195 | }, 196 | "language_info": { 197 | "codemirror_mode": { 198 | "name": "ipython", 199 | "version": 3 200 | }, 201 | "file_extension": ".py", 202 | "mimetype": "text/x-python", 203 | "name": "python", 204 | "nbconvert_exporter": "python", 205 | "pygments_lexer": "ipython3", 206 | "version": "3.6.4" 207 | } 208 | }, 209 | "nbformat": 4, 210 | "nbformat_minor": 2 211 | } 212 | -------------------------------------------------------------------------------- /ImageSegmentationLung.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/krshrimali/Image-Segmentation-using-OpenCV-and-CNN/26aa2089af4142e2214dc87f4889eac0b6be8eb5/ImageSegmentationLung.pdf -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | GNU GENERAL PUBLIC LICENSE 2 | Version 3, 29 June 2007 3 | 4 | Copyright (C) 2007 Free Software Foundation, Inc. 5 | Everyone is permitted to copy and distribute verbatim copies 6 | of this license document, but changing it is not allowed. 7 | 8 | Preamble 9 | 10 | The GNU General Public License is a free, copyleft license for 11 | software and other kinds of works. 12 | 13 | The licenses for most software and other practical works are designed 14 | to take away your freedom to share and change the works. By contrast, 15 | the GNU General Public License is intended to guarantee your freedom to 16 | share and change all versions of a program--to make sure it remains free 17 | software for all its users. We, the Free Software Foundation, use the 18 | GNU General Public License for most of our software; it applies also to 19 | any other work released this way by its authors. You can apply it to 20 | your programs, too. 21 | 22 | When we speak of free software, we are referring to freedom, not 23 | price. Our General Public Licenses are designed to make sure that you 24 | have the freedom to distribute copies of free software (and charge for 25 | them if you wish), that you receive source code or can get it if you 26 | want it, that you can change the software or use pieces of it in new 27 | free programs, and that you know you can do these things. 28 | 29 | To protect your rights, we need to prevent others from denying you 30 | these rights or asking you to surrender the rights. Therefore, you have 31 | certain responsibilities if you distribute copies of the software, or if 32 | you modify it: responsibilities to respect the freedom of others. 33 | 34 | For example, if you distribute copies of such a program, whether 35 | gratis or for a fee, you must pass on to the recipients the same 36 | freedoms that you received. You must make sure that they, too, receive 37 | or can get the source code. And you must show them these terms so they 38 | know their rights. 39 | 40 | Developers that use the GNU GPL protect your rights with two steps: 41 | (1) assert copyright on the software, and (2) offer you this License 42 | giving you legal permission to copy, distribute and/or modify it. 43 | 44 | For the developers' and authors' protection, the GPL clearly explains 45 | that there is no warranty for this free software. For both users' and 46 | authors' sake, the GPL requires that modified versions be marked as 47 | changed, so that their problems will not be attributed erroneously to 48 | authors of previous versions. 49 | 50 | Some devices are designed to deny users access to install or run 51 | modified versions of the software inside them, although the manufacturer 52 | can do so. This is fundamentally incompatible with the aim of 53 | protecting users' freedom to change the software. The systematic 54 | pattern of such abuse occurs in the area of products for individuals to 55 | use, which is precisely where it is most unacceptable. Therefore, we 56 | have designed this version of the GPL to prohibit the practice for those 57 | products. If such problems arise substantially in other domains, we 58 | stand ready to extend this provision to those domains in future versions 59 | of the GPL, as needed to protect the freedom of users. 60 | 61 | Finally, every program is threatened constantly by software patents. 62 | States should not allow patents to restrict development and use of 63 | software on general-purpose computers, but in those that do, we wish to 64 | avoid the special danger that patents applied to a free program could 65 | make it effectively proprietary. To prevent this, the GPL assures that 66 | patents cannot be used to render the program non-free. 67 | 68 | The precise terms and conditions for copying, distribution and 69 | modification follow. 70 | 71 | TERMS AND CONDITIONS 72 | 73 | 0. Definitions. 74 | 75 | "This License" refers to version 3 of the GNU General Public License. 76 | 77 | "Copyright" also means copyright-like laws that apply to other kinds of 78 | works, such as semiconductor masks. 79 | 80 | "The Program" refers to any copyrightable work licensed under this 81 | License. Each licensee is addressed as "you". "Licensees" and 82 | "recipients" may be individuals or organizations. 83 | 84 | To "modify" a work means to copy from or adapt all or part of the work 85 | in a fashion requiring copyright permission, other than the making of an 86 | exact copy. The resulting work is called a "modified version" of the 87 | earlier work or a work "based on" the earlier work. 88 | 89 | A "covered work" means either the unmodified Program or a work based 90 | on the Program. 91 | 92 | To "propagate" a work means to do anything with it that, without 93 | permission, would make you directly or secondarily liable for 94 | infringement under applicable copyright law, except executing it on a 95 | computer or modifying a private copy. Propagation includes copying, 96 | distribution (with or without modification), making available to the 97 | public, and in some countries other activities as well. 98 | 99 | To "convey" a work means any kind of propagation that enables other 100 | parties to make or receive copies. Mere interaction with a user through 101 | a computer network, with no transfer of a copy, is not conveying. 102 | 103 | An interactive user interface displays "Appropriate Legal Notices" 104 | to the extent that it includes a convenient and prominently visible 105 | feature that (1) displays an appropriate copyright notice, and (2) 106 | tells the user that there is no warranty for the work (except to the 107 | extent that warranties are provided), that licensees may convey the 108 | work under this License, and how to view a copy of this License. If 109 | the interface presents a list of user commands or options, such as a 110 | menu, a prominent item in the list meets this criterion. 111 | 112 | 1. Source Code. 113 | 114 | The "source code" for a work means the preferred form of the work 115 | for making modifications to it. "Object code" means any non-source 116 | form of a work. 117 | 118 | A "Standard Interface" means an interface that either is an official 119 | standard defined by a recognized standards body, or, in the case of 120 | interfaces specified for a particular programming language, one that 121 | is widely used among developers working in that language. 122 | 123 | The "System Libraries" of an executable work include anything, other 124 | than the work as a whole, that (a) is included in the normal form of 125 | packaging a Major Component, but which is not part of that Major 126 | Component, and (b) serves only to enable use of the work with that 127 | Major Component, or to implement a Standard Interface for which an 128 | implementation is available to the public in source code form. A 129 | "Major Component", in this context, means a major essential component 130 | (kernel, window system, and so on) of the specific operating system 131 | (if any) on which the executable work runs, or a compiler used to 132 | produce the work, or an object code interpreter used to run it. 133 | 134 | The "Corresponding Source" for a work in object code form means all 135 | the source code needed to generate, install, and (for an executable 136 | work) run the object code and to modify the work, including scripts to 137 | control those activities. However, it does not include the work's 138 | System Libraries, or general-purpose tools or generally available free 139 | programs which are used unmodified in performing those activities but 140 | which are not part of the work. For example, Corresponding Source 141 | includes interface definition files associated with source files for 142 | the work, and the source code for shared libraries and dynamically 143 | linked subprograms that the work is specifically designed to require, 144 | such as by intimate data communication or control flow between those 145 | subprograms and other parts of the work. 146 | 147 | The Corresponding Source need not include anything that users 148 | can regenerate automatically from other parts of the Corresponding 149 | Source. 150 | 151 | The Corresponding Source for a work in source code form is that 152 | same work. 153 | 154 | 2. Basic Permissions. 155 | 156 | All rights granted under this License are granted for the term of 157 | copyright on the Program, and are irrevocable provided the stated 158 | conditions are met. This License explicitly affirms your unlimited 159 | permission to run the unmodified Program. The output from running a 160 | covered work is covered by this License only if the output, given its 161 | content, constitutes a covered work. This License acknowledges your 162 | rights of fair use or other equivalent, as provided by copyright law. 163 | 164 | You may make, run and propagate covered works that you do not 165 | convey, without conditions so long as your license otherwise remains 166 | in force. You may convey covered works to others for the sole purpose 167 | of having them make modifications exclusively for you, or provide you 168 | with facilities for running those works, provided that you comply with 169 | the terms of this License in conveying all material for which you do 170 | not control copyright. Those thus making or running the covered works 171 | for you must do so exclusively on your behalf, under your direction 172 | and control, on terms that prohibit them from making any copies of 173 | your copyrighted material outside their relationship with you. 174 | 175 | Conveying under any other circumstances is permitted solely under 176 | the conditions stated below. Sublicensing is not allowed; section 10 177 | makes it unnecessary. 178 | 179 | 3. Protecting Users' Legal Rights From Anti-Circumvention Law. 180 | 181 | No covered work shall be deemed part of an effective technological 182 | measure under any applicable law fulfilling obligations under article 183 | 11 of the WIPO copyright treaty adopted on 20 December 1996, or 184 | similar laws prohibiting or restricting circumvention of such 185 | measures. 186 | 187 | When you convey a covered work, you waive any legal power to forbid 188 | circumvention of technological measures to the extent such circumvention 189 | is effected by exercising rights under this License with respect to 190 | the covered work, and you disclaim any intention to limit operation or 191 | modification of the work as a means of enforcing, against the work's 192 | users, your or third parties' legal rights to forbid circumvention of 193 | technological measures. 194 | 195 | 4. Conveying Verbatim Copies. 196 | 197 | You may convey verbatim copies of the Program's source code as you 198 | receive it, in any medium, provided that you conspicuously and 199 | appropriately publish on each copy an appropriate copyright notice; 200 | keep intact all notices stating that this License and any 201 | non-permissive terms added in accord with section 7 apply to the code; 202 | keep intact all notices of the absence of any warranty; and give all 203 | recipients a copy of this License along with the Program. 204 | 205 | You may charge any price or no price for each copy that you convey, 206 | and you may offer support or warranty protection for a fee. 207 | 208 | 5. Conveying Modified Source Versions. 209 | 210 | You may convey a work based on the Program, or the modifications to 211 | produce it from the Program, in the form of source code under the 212 | terms of section 4, provided that you also meet all of these conditions: 213 | 214 | a) The work must carry prominent notices stating that you modified 215 | it, and giving a relevant date. 216 | 217 | b) The work must carry prominent notices stating that it is 218 | released under this License and any conditions added under section 219 | 7. This requirement modifies the requirement in section 4 to 220 | "keep intact all notices". 221 | 222 | c) You must license the entire work, as a whole, under this 223 | License to anyone who comes into possession of a copy. This 224 | License will therefore apply, along with any applicable section 7 225 | additional terms, to the whole of the work, and all its parts, 226 | regardless of how they are packaged. This License gives no 227 | permission to license the work in any other way, but it does not 228 | invalidate such permission if you have separately received it. 229 | 230 | d) If the work has interactive user interfaces, each must display 231 | Appropriate Legal Notices; however, if the Program has interactive 232 | interfaces that do not display Appropriate Legal Notices, your 233 | work need not make them do so. 234 | 235 | A compilation of a covered work with other separate and independent 236 | works, which are not by their nature extensions of the covered work, 237 | and which are not combined with it such as to form a larger program, 238 | in or on a volume of a storage or distribution medium, is called an 239 | "aggregate" if the compilation and its resulting copyright are not 240 | used to limit the access or legal rights of the compilation's users 241 | beyond what the individual works permit. Inclusion of a covered work 242 | in an aggregate does not cause this License to apply to the other 243 | parts of the aggregate. 244 | 245 | 6. Conveying Non-Source Forms. 246 | 247 | You may convey a covered work in object code form under the terms 248 | of sections 4 and 5, provided that you also convey the 249 | machine-readable Corresponding Source under the terms of this License, 250 | in one of these ways: 251 | 252 | a) Convey the object code in, or embodied in, a physical product 253 | (including a physical distribution medium), accompanied by the 254 | Corresponding Source fixed on a durable physical medium 255 | customarily used for software interchange. 256 | 257 | b) Convey the object code in, or embodied in, a physical product 258 | (including a physical distribution medium), accompanied by a 259 | written offer, valid for at least three years and valid for as 260 | long as you offer spare parts or customer support for that product 261 | model, to give anyone who possesses the object code either (1) a 262 | copy of the Corresponding Source for all the software in the 263 | product that is covered by this License, on a durable physical 264 | medium customarily used for software interchange, for a price no 265 | more than your reasonable cost of physically performing this 266 | conveying of source, or (2) access to copy the 267 | Corresponding Source from a network server at no charge. 268 | 269 | c) Convey individual copies of the object code with a copy of the 270 | written offer to provide the Corresponding Source. This 271 | alternative is allowed only occasionally and noncommercially, and 272 | only if you received the object code with such an offer, in accord 273 | with subsection 6b. 274 | 275 | d) Convey the object code by offering access from a designated 276 | place (gratis or for a charge), and offer equivalent access to the 277 | Corresponding Source in the same way through the same place at no 278 | further charge. You need not require recipients to copy the 279 | Corresponding Source along with the object code. If the place to 280 | copy the object code is a network server, the Corresponding Source 281 | may be on a different server (operated by you or a third party) 282 | that supports equivalent copying facilities, provided you maintain 283 | clear directions next to the object code saying where to find the 284 | Corresponding Source. Regardless of what server hosts the 285 | Corresponding Source, you remain obligated to ensure that it is 286 | available for as long as needed to satisfy these requirements. 287 | 288 | e) Convey the object code using peer-to-peer transmission, provided 289 | you inform other peers where the object code and Corresponding 290 | Source of the work are being offered to the general public at no 291 | charge under subsection 6d. 292 | 293 | A separable portion of the object code, whose source code is excluded 294 | from the Corresponding Source as a System Library, need not be 295 | included in conveying the object code work. 296 | 297 | A "User Product" is either (1) a "consumer product", which means any 298 | tangible personal property which is normally used for personal, family, 299 | or household purposes, or (2) anything designed or sold for incorporation 300 | into a dwelling. In determining whether a product is a consumer product, 301 | doubtful cases shall be resolved in favor of coverage. For a particular 302 | product received by a particular user, "normally used" refers to a 303 | typical or common use of that class of product, regardless of the status 304 | of the particular user or of the way in which the particular user 305 | actually uses, or expects or is expected to use, the product. A product 306 | is a consumer product regardless of whether the product has substantial 307 | commercial, industrial or non-consumer uses, unless such uses represent 308 | the only significant mode of use of the product. 309 | 310 | "Installation Information" for a User Product means any methods, 311 | procedures, authorization keys, or other information required to install 312 | and execute modified versions of a covered work in that User Product from 313 | a modified version of its Corresponding Source. The information must 314 | suffice to ensure that the continued functioning of the modified object 315 | code is in no case prevented or interfered with solely because 316 | modification has been made. 317 | 318 | If you convey an object code work under this section in, or with, or 319 | specifically for use in, a User Product, and the conveying occurs as 320 | part of a transaction in which the right of possession and use of the 321 | User Product is transferred to the recipient in perpetuity or for a 322 | fixed term (regardless of how the transaction is characterized), the 323 | Corresponding Source conveyed under this section must be accompanied 324 | by the Installation Information. But this requirement does not apply 325 | if neither you nor any third party retains the ability to install 326 | modified object code on the User Product (for example, the work has 327 | been installed in ROM). 328 | 329 | The requirement to provide Installation Information does not include a 330 | requirement to continue to provide support service, warranty, or updates 331 | for a work that has been modified or installed by the recipient, or for 332 | the User Product in which it has been modified or installed. Access to a 333 | network may be denied when the modification itself materially and 334 | adversely affects the operation of the network or violates the rules and 335 | protocols for communication across the network. 336 | 337 | Corresponding Source conveyed, and Installation Information provided, 338 | in accord with this section must be in a format that is publicly 339 | documented (and with an implementation available to the public in 340 | source code form), and must require no special password or key for 341 | unpacking, reading or copying. 342 | 343 | 7. Additional Terms. 344 | 345 | "Additional permissions" are terms that supplement the terms of this 346 | License by making exceptions from one or more of its conditions. 347 | Additional permissions that are applicable to the entire Program shall 348 | be treated as though they were included in this License, to the extent 349 | that they are valid under applicable law. If additional permissions 350 | apply only to part of the Program, that part may be used separately 351 | under those permissions, but the entire Program remains governed by 352 | this License without regard to the additional permissions. 353 | 354 | When you convey a copy of a covered work, you may at your option 355 | remove any additional permissions from that copy, or from any part of 356 | it. (Additional permissions may be written to require their own 357 | removal in certain cases when you modify the work.) You may place 358 | additional permissions on material, added by you to a covered work, 359 | for which you have or can give appropriate copyright permission. 360 | 361 | Notwithstanding any other provision of this License, for material you 362 | add to a covered work, you may (if authorized by the copyright holders of 363 | that material) supplement the terms of this License with terms: 364 | 365 | a) Disclaiming warranty or limiting liability differently from the 366 | terms of sections 15 and 16 of this License; or 367 | 368 | b) Requiring preservation of specified reasonable legal notices or 369 | author attributions in that material or in the Appropriate Legal 370 | Notices displayed by works containing it; or 371 | 372 | c) Prohibiting misrepresentation of the origin of that material, or 373 | requiring that modified versions of such material be marked in 374 | reasonable ways as different from the original version; or 375 | 376 | d) Limiting the use for publicity purposes of names of licensors or 377 | authors of the material; or 378 | 379 | e) Declining to grant rights under trademark law for use of some 380 | trade names, trademarks, or service marks; or 381 | 382 | f) Requiring indemnification of licensors and authors of that 383 | material by anyone who conveys the material (or modified versions of 384 | it) with contractual assumptions of liability to the recipient, for 385 | any liability that these contractual assumptions directly impose on 386 | those licensors and authors. 387 | 388 | All other non-permissive additional terms are considered "further 389 | restrictions" within the meaning of section 10. If the Program as you 390 | received it, or any part of it, contains a notice stating that it is 391 | governed by this License along with a term that is a further 392 | restriction, you may remove that term. If a license document contains 393 | a further restriction but permits relicensing or conveying under this 394 | License, you may add to a covered work material governed by the terms 395 | of that license document, provided that the further restriction does 396 | not survive such relicensing or conveying. 397 | 398 | If you add terms to a covered work in accord with this section, you 399 | must place, in the relevant source files, a statement of the 400 | additional terms that apply to those files, or a notice indicating 401 | where to find the applicable terms. 402 | 403 | Additional terms, permissive or non-permissive, may be stated in the 404 | form of a separately written license, or stated as exceptions; 405 | the above requirements apply either way. 406 | 407 | 8. Termination. 408 | 409 | You may not propagate or modify a covered work except as expressly 410 | provided under this License. Any attempt otherwise to propagate or 411 | modify it is void, and will automatically terminate your rights under 412 | this License (including any patent licenses granted under the third 413 | paragraph of section 11). 414 | 415 | However, if you cease all violation of this License, then your 416 | license from a particular copyright holder is reinstated (a) 417 | provisionally, unless and until the copyright holder explicitly and 418 | finally terminates your license, and (b) permanently, if the copyright 419 | holder fails to notify you of the violation by some reasonable means 420 | prior to 60 days after the cessation. 421 | 422 | Moreover, your license from a particular copyright holder is 423 | reinstated permanently if the copyright holder notifies you of the 424 | violation by some reasonable means, this is the first time you have 425 | received notice of violation of this License (for any work) from that 426 | copyright holder, and you cure the violation prior to 30 days after 427 | your receipt of the notice. 428 | 429 | Termination of your rights under this section does not terminate the 430 | licenses of parties who have received copies or rights from you under 431 | this License. If your rights have been terminated and not permanently 432 | reinstated, you do not qualify to receive new licenses for the same 433 | material under section 10. 434 | 435 | 9. Acceptance Not Required for Having Copies. 436 | 437 | You are not required to accept this License in order to receive or 438 | run a copy of the Program. Ancillary propagation of a covered work 439 | occurring solely as a consequence of using peer-to-peer transmission 440 | to receive a copy likewise does not require acceptance. However, 441 | nothing other than this License grants you permission to propagate or 442 | modify any covered work. These actions infringe copyright if you do 443 | not accept this License. Therefore, by modifying or propagating a 444 | covered work, you indicate your acceptance of this License to do so. 445 | 446 | 10. Automatic Licensing of Downstream Recipients. 447 | 448 | Each time you convey a covered work, the recipient automatically 449 | receives a license from the original licensors, to run, modify and 450 | propagate that work, subject to this License. You are not responsible 451 | for enforcing compliance by third parties with this License. 452 | 453 | An "entity transaction" is a transaction transferring control of an 454 | organization, or substantially all assets of one, or subdividing an 455 | organization, or merging organizations. If propagation of a covered 456 | work results from an entity transaction, each party to that 457 | transaction who receives a copy of the work also receives whatever 458 | licenses to the work the party's predecessor in interest had or could 459 | give under the previous paragraph, plus a right to possession of the 460 | Corresponding Source of the work from the predecessor in interest, if 461 | the predecessor has it or can get it with reasonable efforts. 462 | 463 | You may not impose any further restrictions on the exercise of the 464 | rights granted or affirmed under this License. For example, you may 465 | not impose a license fee, royalty, or other charge for exercise of 466 | rights granted under this License, and you may not initiate litigation 467 | (including a cross-claim or counterclaim in a lawsuit) alleging that 468 | any patent claim is infringed by making, using, selling, offering for 469 | sale, or importing the Program or any portion of it. 470 | 471 | 11. Patents. 472 | 473 | A "contributor" is a copyright holder who authorizes use under this 474 | License of the Program or a work on which the Program is based. The 475 | work thus licensed is called the contributor's "contributor version". 476 | 477 | A contributor's "essential patent claims" are all patent claims 478 | owned or controlled by the contributor, whether already acquired or 479 | hereafter acquired, that would be infringed by some manner, permitted 480 | by this License, of making, using, or selling its contributor version, 481 | but do not include claims that would be infringed only as a 482 | consequence of further modification of the contributor version. For 483 | purposes of this definition, "control" includes the right to grant 484 | patent sublicenses in a manner consistent with the requirements of 485 | this License. 486 | 487 | Each contributor grants you a non-exclusive, worldwide, royalty-free 488 | patent license under the contributor's essential patent claims, to 489 | make, use, sell, offer for sale, import and otherwise run, modify and 490 | propagate the contents of its contributor version. 491 | 492 | In the following three paragraphs, a "patent license" is any express 493 | agreement or commitment, however denominated, not to enforce a patent 494 | (such as an express permission to practice a patent or covenant not to 495 | sue for patent infringement). To "grant" such a patent license to a 496 | party means to make such an agreement or commitment not to enforce a 497 | patent against the party. 498 | 499 | If you convey a covered work, knowingly relying on a patent license, 500 | and the Corresponding Source of the work is not available for anyone 501 | to copy, free of charge and under the terms of this License, through a 502 | publicly available network server or other readily accessible means, 503 | then you must either (1) cause the Corresponding Source to be so 504 | available, or (2) arrange to deprive yourself of the benefit of the 505 | patent license for this particular work, or (3) arrange, in a manner 506 | consistent with the requirements of this License, to extend the patent 507 | license to downstream recipients. "Knowingly relying" means you have 508 | actual knowledge that, but for the patent license, your conveying the 509 | covered work in a country, or your recipient's use of the covered work 510 | in a country, would infringe one or more identifiable patents in that 511 | country that you have reason to believe are valid. 512 | 513 | If, pursuant to or in connection with a single transaction or 514 | arrangement, you convey, or propagate by procuring conveyance of, a 515 | covered work, and grant a patent license to some of the parties 516 | receiving the covered work authorizing them to use, propagate, modify 517 | or convey a specific copy of the covered work, then the patent license 518 | you grant is automatically extended to all recipients of the covered 519 | work and works based on it. 520 | 521 | A patent license is "discriminatory" if it does not include within 522 | the scope of its coverage, prohibits the exercise of, or is 523 | conditioned on the non-exercise of one or more of the rights that are 524 | specifically granted under this License. You may not convey a covered 525 | work if you are a party to an arrangement with a third party that is 526 | in the business of distributing software, under which you make payment 527 | to the third party based on the extent of your activity of conveying 528 | the work, and under which the third party grants, to any of the 529 | parties who would receive the covered work from you, a discriminatory 530 | patent license (a) in connection with copies of the covered work 531 | conveyed by you (or copies made from those copies), or (b) primarily 532 | for and in connection with specific products or compilations that 533 | contain the covered work, unless you entered into that arrangement, 534 | or that patent license was granted, prior to 28 March 2007. 535 | 536 | Nothing in this License shall be construed as excluding or limiting 537 | any implied license or other defenses to infringement that may 538 | otherwise be available to you under applicable patent law. 539 | 540 | 12. No Surrender of Others' Freedom. 541 | 542 | If conditions are imposed on you (whether by court order, agreement or 543 | otherwise) that contradict the conditions of this License, they do not 544 | excuse you from the conditions of this License. If you cannot convey a 545 | covered work so as to satisfy simultaneously your obligations under this 546 | License and any other pertinent obligations, then as a consequence you may 547 | not convey it at all. For example, if you agree to terms that obligate you 548 | to collect a royalty for further conveying from those to whom you convey 549 | the Program, the only way you could satisfy both those terms and this 550 | License would be to refrain entirely from conveying the Program. 551 | 552 | 13. Use with the GNU Affero General Public License. 553 | 554 | Notwithstanding any other provision of this License, you have 555 | permission to link or combine any covered work with a work licensed 556 | under version 3 of the GNU Affero General Public License into a single 557 | combined work, and to convey the resulting work. The terms of this 558 | License will continue to apply to the part which is the covered work, 559 | but the special requirements of the GNU Affero General Public License, 560 | section 13, concerning interaction through a network will apply to the 561 | combination as such. 562 | 563 | 14. Revised Versions of this License. 564 | 565 | The Free Software Foundation may publish revised and/or new versions of 566 | the GNU General Public License from time to time. Such new versions will 567 | be similar in spirit to the present version, but may differ in detail to 568 | address new problems or concerns. 569 | 570 | Each version is given a distinguishing version number. If the 571 | Program specifies that a certain numbered version of the GNU General 572 | Public License "or any later version" applies to it, you have the 573 | option of following the terms and conditions either of that numbered 574 | version or of any later version published by the Free Software 575 | Foundation. If the Program does not specify a version number of the 576 | GNU General Public License, you may choose any version ever published 577 | by the Free Software Foundation. 578 | 579 | If the Program specifies that a proxy can decide which future 580 | versions of the GNU General Public License can be used, that proxy's 581 | public statement of acceptance of a version permanently authorizes you 582 | to choose that version for the Program. 583 | 584 | Later license versions may give you additional or different 585 | permissions. However, no additional obligations are imposed on any 586 | author or copyright holder as a result of your choosing to follow a 587 | later version. 588 | 589 | 15. Disclaimer of Warranty. 590 | 591 | THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY 592 | APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT 593 | HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY 594 | OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, 595 | THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 596 | PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM 597 | IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF 598 | ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 599 | 600 | 16. Limitation of Liability. 601 | 602 | IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING 603 | WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS 604 | THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY 605 | GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE 606 | USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF 607 | DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD 608 | PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), 609 | EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF 610 | SUCH DAMAGES. 611 | 612 | 17. Interpretation of Sections 15 and 16. 613 | 614 | If the disclaimer of warranty and limitation of liability provided 615 | above cannot be given local legal effect according to their terms, 616 | reviewing courts shall apply local law that most closely approximates 617 | an absolute waiver of all civil liability in connection with the 618 | Program, unless a warranty or assumption of liability accompanies a 619 | copy of the Program in return for a fee. 620 | 621 | END OF TERMS AND CONDITIONS 622 | 623 | How to Apply These Terms to Your New Programs 624 | 625 | If you develop a new program, and you want it to be of the greatest 626 | possible use to the public, the best way to achieve this is to make it 627 | free software which everyone can redistribute and change under these terms. 628 | 629 | To do so, attach the following notices to the program. It is safest 630 | to attach them to the start of each source file to most effectively 631 | state the exclusion of warranty; and each file should have at least 632 | the "copyright" line and a pointer to where the full notice is found. 633 | 634 | 635 | Copyright (C) 636 | 637 | This program is free software: you can redistribute it and/or modify 638 | it under the terms of the GNU General Public License as published by 639 | the Free Software Foundation, either version 3 of the License, or 640 | (at your option) any later version. 641 | 642 | This program is distributed in the hope that it will be useful, 643 | but WITHOUT ANY WARRANTY; without even the implied warranty of 644 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 645 | GNU General Public License for more details. 646 | 647 | You should have received a copy of the GNU General Public License 648 | along with this program. If not, see . 649 | 650 | Also add information on how to contact you by electronic and paper mail. 651 | 652 | If the program does terminal interaction, make it output a short 653 | notice like this when it starts in an interactive mode: 654 | 655 | Copyright (C) 656 | This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. 657 | This is free software, and you are welcome to redistribute it 658 | under certain conditions; type `show c' for details. 659 | 660 | The hypothetical commands `show w' and `show c' should show the appropriate 661 | parts of the General Public License. Of course, your program's commands 662 | might be different; for a GUI interface, you would use an "about box". 663 | 664 | You should also get your employer (if you work as a programmer) or school, 665 | if any, to sign a "copyright disclaimer" for the program, if necessary. 666 | For more information on this, and how to apply and follow the GNU GPL, see 667 | . 668 | 669 | The GNU General Public License does not permit incorporating your program 670 | into proprietary programs. If your program is a subroutine library, you 671 | may consider it more useful to permit linking proprietary applications with 672 | the library. If this is what you want to do, use the GNU Lesser General 673 | Public License instead of this License. But first, please read 674 | . 675 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Image-Segmentation-using-OpenCV-and-CNN 2 | Image Segmentation using OpenCV (and Deep Learning) 3 | -------------------------------------------------------------------------------- /lung_cancer.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/krshrimali/Image-Segmentation-using-OpenCV-and-CNN/26aa2089af4142e2214dc87f4889eac0b6be8eb5/lung_cancer.jpeg -------------------------------------------------------------------------------- /water_coins.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/krshrimali/Image-Segmentation-using-OpenCV-and-CNN/26aa2089af4142e2214dc87f4889eac0b6be8eb5/water_coins.jpg --------------------------------------------------------------------------------