Can convolution be used to solve this?

  • I
  • Thread starter mreff555
  • Start date
  • Tags
    Convolution
In summary, the conversation discussed a software application that prints circular dots on a rotating surface using a fixed printer. The challenge is to create an image appropriate for the printer by combining equations for a circular arc and a straight line. The use of convolution was suggested to simplify the problem, but it requires a specific transfer function to be programmed into the printer's controller. The process of convolution is complex and may require a lot of memory, so it was recommended to use MATLAB to find the frequency response and perform the necessary calculations.
  • #1
mreff555
6
0
I'm working on a software application that is difficult to describe. I have a fixed printer that prints a binary image (black or white). The ultimate goal is to print columns of 1" diameter circular dots, slightly interlaced for efficiency. The caveat is that the printing substrate is not actually a straight line but a section of a rotating platen. To clarify the printer is stationary, the substrate rotates in a circular arc.

Assuming I had some type of scaling factor to jog the rings and assuming I could define a discrete equation to describe the location of black pixels in a given column as if the dots were being printed in a straight line, and assuming I knew the constant speed of the rotating substrate. would it be possible to combine that equation with the equation of a circular arc to produce an image appropriate to feed to this printer?

The resulting image would need to be linear columns of dots stretched accordingly to print on a rotating surface. In other words, very little stretching on the right side, quite a lot of stretching on the left.

Years ago I created a program which assembled the image in a doughnut shape and mapped the pixels to columns, filling in the blanks. While, at the time, I significantly increased the speed, it still takes a few minutes to process. There are more steps involved but this is the first. I'm a chemical engineer so convolution, or programming for that matter, wasn't exactly something I learned with much detail. However it occurred to me the other day that it might simplify this problem. Does this make sense to anyone? or do I completely misunderstand Convolution?
 
Physics news on Phys.org
  • #2
mreff555 said:
Years ago I created a program which assembled the image in a doughnut shape and mapped the pixels to columns, filling in the blanks. While, at the time, I significantly increased the speed, it still takes a few minutes to process. There are more steps involved but this is the first. I'm a chemical engineer so convolution, or programming for that matter, wasn't exactly something I learned with much detail. However it occurred to me the other day that it might simplify this problem. Does this make sense to anyone? or do I completely misunderstand Convolution?
Yes, it is possible...
But convolution can be done by programming the controller with a specific transfer function.
For you to perform convolution, you need input discrete function, the system transfer function and the output...The system transfer function is that of the printer.
Convolution is a complex process involving repeated addition and multiplication, so it may take a lot of memory in the controller ( of printer).
So, what I would advice is, white the discrete output required and transfer function in time domain. Then using MATLAB or manually, find the frequency response of both. Divide the frequency of output by the frequency response of the transfer function.
By property, you get the frequency response of input. Find the inverse Discrete Fournier transform to get the discrete input signal.
Now, by using convolution, you can program
 

1. Can convolution be used to solve any problem?

No, convolution can only be used to solve problems that involve signals or images. It is not a general problem-solving tool.

2. What is the purpose of using convolution to solve a problem?

The purpose of using convolution is to extract useful information from signals or images and use it to solve a particular problem. It is a mathematical operation that can help identify patterns and features in data.

3. Can convolution be used for real-time problem solving?

Yes, convolution can be used for real-time problem solving as it can be implemented efficiently using algorithms and hardware. However, the complexity of the problem and the size of the data may affect the speed of the solution.

4. What types of problems can convolution be used to solve?

Convolution can be used to solve problems such as image and signal processing, pattern recognition, and feature extraction. It is commonly used in fields such as computer vision, speech recognition, and audio processing.

5. How does convolution compare to other problem-solving techniques?

Convolution is a powerful tool for solving problems involving signals and images. It is particularly useful for extracting features and identifying patterns in data. However, it may not be suitable for all types of problems and may require specific knowledge and expertise to use effectively.

Similar threads

  • Programming and Computer Science
Replies
1
Views
819
  • Special and General Relativity
2
Replies
35
Views
2K
  • Computing and Technology
Replies
7
Views
816
Replies
6
Views
2K
  • Engineering and Comp Sci Homework Help
Replies
3
Views
4K
  • Introductory Physics Homework Help
Replies
1
Views
1K
  • Engineering and Comp Sci Homework Help
Replies
6
Views
3K
Replies
1
Views
571
  • Advanced Physics Homework Help
Replies
7
Views
4K
Back
Top