07-23-2010 11:50 PM
now I have a question about image processing
when input a piece of picture into labview,i want to achieve the function image blur just like the image blur in photoshop,so is there any way to solve my problem.Thanks.
07-24-2010 02:11 PM
Hi 666,
blurring an image is the equivalent to a low pass filter.
You can use several algorithms to "blur", just search Wikipedia or use Google to find explanations for them...
Or look in the IMAQ library for functions to help you...
07-25-2010 12:29 AM
thank you for your reply.but the question is that i know the explanation of image blur but i don't know how to blur an image in labview.there are many tools in labview,but i don't know which tool i can use to achieve this function.....
07-25-2010 02:04 AM
I suppose you don't have the IMAQ Vision toolkit, otherwise you would not ask this question.
Therefore, you'll have to develop a blurring function from scratch.
When you open an image in LabVIEW, using one of the read functions in the Programming > Graphics & Sound > Graphic formats subpalette, you get an Image data cluster. Convert it to a 2D array, using the unflatten pixmap in the same subpalette.
Apply your blurring filter to the array (you already told us you know what blurring is...)
Then go the way back : convert the result array into an Image data cluster using the Flatten Pixmap, then display the image using the Draw Flattened Pixmap (in the Programming > Graphics & Sound > Picture functions subpalette).
However, from the way you asked your question, I'm afraid that, even knowing now how to open an image, convert it into an array and back, you'll still have problems working with arrays. Let's see... 😉
07-25-2010 02:56 AM
Yes,you are right.![]()
after converting an image to arrays,though I have said that I know the explanation of image blur,but I don't know how to do it in labview.For example,I can tell you how to achieve the image blur by math when you give me a pen and a piece of paper but I absolutely don't know how to do with these arrays in labview.
here is my understanding of one kind of image blur.
for any point on the image, don't take the value of this point .instead,take the value of around and then take their average as the value of this point.
But ,how to achieve this function in labview seems to be a question ......
thank you for your reply.
07-25-2010 05:17 AM
OK
So your actual question was : "can you help me to learn LabVIEW ?"
And this is a rather broad question. The answer is 42 "probably yes".
But you'll have to do most of the work yourself. I hope you are not expecting us to write a full application for you !
So... start something, learn about how to use loops, what is autoindexing, find the replace array element function... and
come back to ask how to resolve specific difficulties. Show us how far you are able to go.
See you soon !
Quoting Tst,
07-25-2010 06:07 AM
.......Yes,it seems to be a broad question ,but the same ting I want to say is "you are right". Actually this is the first time I use labview. Image processing by LabVIEW is our issue in our summer vacation,now I think I have to learn it from scratch.Thank you.
07-25-2010 07:12 AM
devil8888 a écrit :
Image processing by LabVIEW is our issue in our summer vacation,now I think I have to learn it from scratch.
Could be much worse. LabVIEW is fun. However, for image processing, you should (must) use the IMAQ Vision toolkit. Re-creating image processing functions in LabVIEW will be a waste of time and energy.
07-25-2010 10:34 AM
may be my English is not only a little bad.(for my mother language isn't English)
devil8888 :
Image processing by LabVIEW is our issue in our summer vacation,now I think I have to learn it from scratch.
the word "issue" seems to be used in a wrong way,what i want to convert is "image processiong by labview is our HOMEWORK in this summer vacation".when i learn to use labview ,i feel it very fun....finally thank you for your reply and your goodness.if i have other question in labview, i will ask you again....![]()
10-11-2010 06:03 PM
This method is a bit slow (for my purposes). But is functional. It takes a 2d picture as input and returns the same as output. Each output pixel is the average of all the pixels in a box extending 5 pixels in each direction (didn't want to make this an input for my purposes). Note, each channel (R,G, and B) are averaged separately. Comments?