bwtraceboundary in MATLAB is it the ultimate soultion help
Message-ID:
Subject:
bwtraceboundary in MATLAB , is it the ultimate soultion ? (help needed)
Date:Fri, 19 Dec 2008 20:32:09 +0100
Well, I wonder, I saw in MAtlab a function that called: bwtraceboundary , this function seems to solve all boundary problems for all shapes that you can imagine. I wonder why to use the Hugh transform, or any other complicated mathematical method to extract boundaries of shapes, while one can use this simple function.. Am I missing something here ?? Thanks E
Message-ID:<494c0d5f$1@news.orcon.net.nz>
Subject:
Re: bwtraceboundary in MATLAB , is it the ultimate soultion ? (help needed)
Date:Fri, 19 Dec 2008 22:06:47 +0100
Eizo wrote: > I wonder why to use the Hugh transform, or any other complicated > mathematical method to extract boundaries of shapes, while one can > use this simple function.. The Hough and Radon transforms have applications that cannot be handled by boundary tracers. Specifically, boundary tracing routines usually require the boundary pixels to be contiguous (no breaks) whereas the Hough transform can extract useful line information even when the pixels are not contiguous. For example, if you have a sequence of disconnected dots in a straight line then Hough is useful, boundary tracing is not. -- Mark.
Message-ID:<28620b86-1304-478f-b3ec-70c233c940af@k36g2000pri.googlegroups.com>
Subject:
Re: bwtraceboundary in MATLAB , is it the ultimate soultion ? (help needed)
Date:Fri, 19 Dec 2008 23:00:44 +0100
On Dec 19, 11:06=A0pm, "Mark Andrews (The Other One)"wrote: > Eizo wrote: > > I wonder why to use the Hugh transform, or any other complicated > > mathematical method to extract boundaries of shapes, while one can > > use this simple function.. > > The Hough and Radon transforms have applications that cannot be handled > by boundary tracers. Specifically, boundary tracing routines usually > require the boundary pixels to be contiguous (no breaks) whereas the > Hough transform can extract useful line information even when the pixels > are not contiguous. For example, if you have a sequence of disconnected > dots in a straight line then Hough is useful, boundary tracing is not. > > -- > Mark. But if for example I don't have any problems of disconnected dots ? and all my contours are connected as it should, is there any need to go to Hugh transform ? Is there other reasons I am missing here? Thanks E
Message-ID:
Subject:
Re: bwtraceboundary in MATLAB , is it the ultimate soultion ? (help needed)
Date:Sat, 20 Dec 2008 02:38:29 +0100
> But if for example I don't have any problems of disconnected dots ? > and all my contours are connected as it should, is there any need to > go to Hugh transform ? > Is there other reasons I am missing here? > > Thanks > E Why don't you say what you are really trying to do instead of asking these open-ended questions?
Message-ID:<116bc2bd-2157-45ea-9b52-1bdad3187460@p2g2000prn.googlegroups.com>
Subject:
Re: bwtraceboundary in MATLAB , is it the ultimate soultion ? (help needed)
Date:Sat, 20 Dec 2008 11:04:56 +0100
On Dec 20, 3:38=A0am, Bobwrote: > > But if for example I don't have any problems of disconnected =A0dots = =A0? > > and all my contours are connected as it should, is there any need to > > go to Hugh transform ? > > Is there other reasons I am missing here? > > > Thanks > > E > > Why don't you say what you are really trying to do instead of asking > these open-ended questions? No problem, I just didn';t want to bother other people who already read the other thread. In any case, I am looking for a fast method to capture, road signs, it seems there are many anachronistic ways to do that, which are spread all over the net with some academic papers, but yesterday I found out that in one line in Matlab you can solve this problem very fast. I wanted to make sure I am not missing something.... my pictures are BW, I don't think I have a discontinuities in the boundaries, and it seems that matlab is doing it blazing fast, so unless I am missing something very crucial here , it looks like a good fast method. It will be interesting to know, though, what method they are using in order to implement the bwboundaries. If anyone know, I would be glad to read it .
Message-ID:<8e9024aa-f528-4906-9613-452562c79804@w39g2000prb.googlegroups.com>
Subject:
Re: bwtraceboundary in MATLAB , is it the ultimate soultion ? (help needed)
Date:Sat, 20 Dec 2008 18:43:09 +0100
On Dec 20, 5:04=A0am, Eizowrote: > On Dec 20, 3:38=A0am, Bob wrote: > > > > But if for example I don't have any problems of disconnected =A0dots = =A0? > > > and all my contours are connected as it should, is there any need to > > > go to Hugh transform ? > > > Is there other reasons I am missing here? > > > > Thanks > > > E > > > Why don't you say what you are really trying to do instead of asking > > these open-ended questions? > > No problem, I just didn';t want to bother other people who already > read the other thread. > > In any case, I am looking for a fast method to capture, road signs, it > seems there are many =A0anachronistic ways to do that, which are spread > all over the net =A0with some academic papers, but yesterday I found out > that in one line in Matlab you can solve this problem very fast. > I wanted to make sure I am not missing something.... > > my pictures are BW, I don't think I have a discontinuities in the > boundaries, and it seems that matlab is doing it blazing fast, so > unless I am missing something very crucial here , it looks like a good > fast method. > > It will be interesting to know, though, what method they are using in > order to implement the bwboundaries. > If anyone know, I would be glad to read it . ---------------------------------------------------------------------------= --------------------------------------- Eizo: Well just look at the source code! That will tell you, in excruciating detail, exactly what they are doing. Just put the cursor on the word bwboundaries in your source code, then type control-d to bring up the source code of bwboundaries in its own window. The code for all or most of the image processing toolkit is available this way. Regards, ImageAnalyst
Message-ID:<25b7bc91-b6a1-406f-8ecc-62a7d0b27fbd@i18g2000prf.googlegroups.com>
Subject:
Re: bwtraceboundary in MATLAB , is it the ultimate soultion ? (help needed)
Date:Sun, 21 Dec 2008 19:51:26 +0100
On Dec 20, 9:43 am, ImageAnalystwrote: > Well just look at the source code! That will tell you, in > excruciating detail, exactly what they are doing. If you look in the source code, it turns out to be implemented as a mex dll i.e. compiled code with no source code provided: >B = bwtraceboundarymex(BW,P,CONN,FSTEP,N,DIR); This is a real problem with Matlab. It is essentially a closed environment. Heaven help you if you want to port your code to distribute it.
Message-ID:
Subject:
Re: bwtraceboundary in MATLAB , is it the ultimate soultion ? (help needed)
Date:Mon, 22 Dec 2008 01:50:55 +0100
On Dec 21, 1:51=A0pm, Bobwrote: > On Dec 20, 9:43 am, ImageAnalyst wrote: > > > Well just look at the source code! =A0That will tell you, in > > excruciating detail, exactly what they are doing. > > If you look in the source code, it turns out to be implemented as a > mex dll i.e. compiled code with no source code provided: > > >B =3D bwtraceboundarymex(BW,P,CONN,FSTEP,N,DIR); > > This is a real problem with Matlab. It is essentially a closed > environment. Heaven help you if you want to port your code to > distribute it. -------------------------------------------------------------------- Why "heaven help you"? If it works fine for you then why does it matter that you can't see every source code line. The Mathworks usually gives references for papers if they're following a published algorithm. I don't know about you but I've used many libraries over the past 30 years and if the library routine does it's job then I don't feel any urge to dig into it further. Why waste my time? I bet lots of us use libraries all the time without concern as to what's in them. Even if you're using open source code libraries, how many of us actually dig into them to see how they do an erosion, or a histogram, or whatever? If it works for you, then you just use it without worry. If you want to distribute your code, then MATLAB lets you distribute it royalty free and it's pretty easy - just two files the run-time installer, and your executable. So easy that I don't need any help from heaven to do it. ImageAnalyst
Message-ID:<5311f02b-a18b-4f4e-b62b-abced1e29e31@q30g2000prq.googlegroups.com>
Subject:
Re: bwtraceboundary in MATLAB , is it the ultimate soultion ? (help needed)
Date:Mon, 22 Dec 2008 20:05:24 +0100
On Dec 22, 2:50=A0am, ImageAnalystwrote: > On Dec 21, 1:51=A0pm, Bob wrote: > > > On Dec 20, 9:43 am, ImageAnalyst wrote: > > > > Well just look at the source code! =A0That will tell you, in > > > excruciating detail, exactly what they are doing. > > > If you look in the source code, it turns out to be implemented as a > > mex dll i.e. compiled code with no source code provided: > > > >B =3D bwtraceboundarymex(BW,P,CONN,FSTEP,N,DIR); > > > This is a real problem with Matlab. It is essentially a closed > > environment. Heaven help you if you want to port your code to > > distribute it. > > -------------------------------------------------------------------- > Why "heaven help you"? =A0If it works fine for you then why does it > matter that you can't see every source code line. =A0The Mathworks > usually gives references for papers if they're following a published > algorithm. =A0I don't know about you but I've used many libraries over > the past 30 years and if the library routine does it's job then I > don't feel any urge to dig into it further. =A0Why waste my time? =A0I be= t > lots of us use libraries all the time without concern as to what's in > them. =A0Even if you're using open source code libraries, how many of us > actually dig into them to see how they do an erosion, or a histogram, > or whatever? =A0If it works for you, then you just use it without > worry. =A0If you want to distribute your code, then MATLAB lets you > distribute it royalty free and it's pretty easy - just two files the > run-time installer, and your executable. =A0So easy that I don't need > any help from heaven to do it. > ImageAnalyst Pretty simple . I need the code, because I am using it in my thesis, and I want to be able to explain (in case someone will ask) , why I choose this algorithm over the other one exist in the academic paper , and I want to make sure that the algorithm they are using is ok, and was the best solution I can come up with. Also plain curiosity. . you are right in the case when someone is programming a code in some company and they don't care on "how", they just focus on the : " make it work" Btw, I also saw that it was compiled. and to start digging into the CPP code, that's a whole new ball game. I just hope they care to put some comments :)
Message-ID:
Subject:
Re: bwtraceboundary in MATLAB , is it the ultimate soultion ? (help needed)
Date:Mon, 22 Dec 2008 21:08:02 +0100
On Dec 21, 4:50 pm, ImageAnalystwrote: > Why "heaven help you"? If it works fine for you then why does it > matter that you can't see every source code line. The Mathworks > usually gives references for papers if they're following a published > algorithm. I don't know about you but I've used many libraries over > the past 30 years and if the library routine does it's job then I > don't feel any urge to dig into it further. Why waste my time? I bet > lots of us use libraries all the time without concern as to what's in > them. Well, it looks like you have never tried to make a shippable i.e. salable product based on your work. You need to port the code to another language since the matlab compiler is a joke. It requires an ~100 Mbyte dll, the dll changes every time they release a new version and the different versions are incompatible, and the execution time is no faster than the matlab code. Even if you are an academic, some researchers want their code to be open and reproducible. After all, that is the purpose of all publications, to show others what you did and how you did it so they can reproduce it and see for themselves. As the OP noted, you cannot reproduce a black box no matter how satisfied YOU are with it. And as to references, most publications, in the words of Jon Claerbout of Stanford, are 'advertisements' and not sufficient to reproduce the results. The scholarship in software research (and I include image processing in this topic) is the code itself. It is almost impossible to reproduce results based on the description in a paper. Suppose 200 years from now, someone wants to reproduce an algorithm that you documented as matlab code. Mathworks has gone the way of all companies and is defunct and gone with it is matlab. Your results are essentially useless. Steve Eddins > We ship the C and C++ source code for almost all of the MEX-files in the Image Processing Toolbox. Thanks. I had not noticed that. Do you provide source for other functions such as rand? I have not followed up the references but see my comments above about reproducible research. Bob
Message-ID:
Subject:
Re: bwtraceboundary in MATLAB , is it the ultimate soultion ? (help needed)
Date:Tue, 23 Dec 2008 00:56:19 +0100
On Dec 22, 10:08=A0pm, Bobwrote: > On Dec 21, 4:50 pm, ImageAnalyst wrote: > > > Why "heaven help you"? =A0If it works fine for you then why does it > > matter that you can't see every source code line. =A0The Mathworks > > usually gives references for papers if they're following a published > > algorithm. =A0I don't know about you but I've used many libraries over > > the past 30 years and if the library routine does it's job then I > > don't feel any urge to dig into it further. =A0Why waste my time? =A0I = bet > > lots of us use libraries all the time without concern as to what's in > > them. > > Well, it looks like you have never tried to make a shippable i.e. > salable product based on your work. You need to port the code to > another language since the matlab compiler is a joke. It requires an > ~100 Mbyte dll, =A0the dll changes every time they release a new version > and the different versions are incompatible, and the execution time is > no faster than the matlab code. > > Even if you are an academic, some researchers want their code to be > open and reproducible. After all, that is the purpose of all > publications, to show others what you did and how you did it so they > can reproduce it and see for themselves. As the OP noted, you cannot > reproduce a black box no matter how satisfied YOU are with it. > > And as to references, most publications, in the words of Jon Claerbout > of Stanford, are 'advertisements' and not sufficient to reproduce the > results. The scholarship in software research (and I include image > processing in this topic) is the code itself. It is almost impossible > to reproduce results based on the description in a paper. Suppose 200 > years from =A0now, someone wants to reproduce an algorithm that you > documented as matlab code. Mathworks has gone the way of all companies > and is defunct and gone with it is matlab. Your results are > essentially useless. Exactly.
Message-ID:
Subject:
Re: bwtraceboundary in MATLAB , is it the ultimate soultion ? (help needed)
Date:Mon, 22 Dec 2008 15:05:45 +0100
Bob wrote: > On Dec 20, 9:43 am, ImageAnalystwrote: > >> Well just look at the source code! That will tell you, in >> excruciating detail, exactly what they are doing. > > If you look in the source code, it turns out to be implemented as a > mex dll i.e. compiled code with no source code provided: >> B = bwtraceboundarymex(BW,P,CONN,FSTEP,N,DIR); > > This is a real problem with Matlab. It is essentially a closed > environment. Heaven help you if you want to port your code to > distribute it. Keep looking. In the folder where MATLAB is installed, see the file toolbox\images\images\private\bwtraceboundarymex.cpp. We ship the C and C++ source code for almost all of the MEX-files in the Image Processing Toolbox. --- Steve Eddins http://blogs.mathworks.com/steve/
Message-ID:<6f0f9609-eae0-4748-b491-fabeaafc3db3@s14g2000vbp.googlegroups.com>
Subject:
Re: bwtraceboundary in MATLAB , is it the ultimate soultion ? (help needed)
Date:Sat, 20 Dec 2008 03:44:48 +0100
On Dec 19, 5:00=A0pm, Eizowrote: > On Dec 19, 11:06=A0pm, "Mark Andrews (The Other One)" > > wrote: > > Eizo wrote: > > > I wonder why to use the Hugh transform, or any other complicated > > > mathematical method to extract boundaries of shapes, while one can > > > use this simple function.. > > > The Hough and Radon transforms have applications that cannot be handled > > by boundary tracers. Specifically, boundary tracing routines usually > > require the boundary pixels to be contiguous (no breaks) whereas the > > Hough transform can extract useful line information even when the pixel= s > > are not contiguous. For example, if you have a sequence of disconnected > > dots in a straight line then Hough is useful, boundary tracing is not. > > > -- > > Mark. > > But if for example I don't have any problems of disconnected =A0dots =A0? > and all my contours are connected as it should, is there any need to > go to Hugh transform ? > Is there other reasons I am missing here? > > Thanks > E --------------------------------------------------------- E: If you have a binary image with contiguous blobs, then yes, you can use the bwboundaries function in MATLAB. The Hough (not Hugh) transform is one possible method that you can use on your way to getting a binary image with blobs in it. Yes, you are missing something, but continued learning in the area will benefit you. Don't worry, everyone starts out in the area with no knowledge at all and gains more and more as the years go by. Regards, ImageAnalyst



RSS News Feed