0

I want to create 2D panorama of lateral surface of a metallic(painted/otherwise) cylindrical object which can have defects such as scratch or a dent. I captured a video of 300 frames with appropriate ROI of the same. Now I am trying to stitch two continuous frames but there are no control points (not identifiable) since the surface is uniform so you don't know where the 1st column of second frame lies in the 1st frame. Moreover, the intensity values of a pixel tend to vary over two continuous frames due to high reflective nature of metal surface. Each frame has distortion too cuz of the curved nature of the surface. As an alternative method I tried using multiple cams but I am loosing the 'data' at the two ends of a frame.

2 Answers2

3

How do you capture your video? Is the camera moving, or is the cylinder rotating? If you are free to design the image acquisition technique yourself, then I would recommend the following:

Use a linescan camera. These cameras are designed for applications like what you want, as they will automatically stitch together each frame (which is only a single line of pixels) and ensure that when stitched together your entire surface has the same illumination quality. Your camera should be stationary and your object set to rotate; you will need to be able to control the speed of rotation to match the frame-rate of the linescan camera.

Alternatively, if you do not want to use a linescan camera, you could still approximate this functionality by knowing the rotation speed of your object. This way you should still know the relationship between subsequent frames for stitching even without having features to direct it.

Mozglubov
  • 433
  • 4
  • 11
  • I believe one way of achiveing this is by making a "dummy" cylinder for training with marks on its surface for calibration/stitching. – Shai Sep 15 '13 at 14:48
  • Yes, you will need to calibrate it. I've actually implemented an almost identical system to that which I described for inspecting medical stents (see the patent link [here](http://www.google.ca/patents/US7812941)). Obviously you will be able to more easily implement a system for rotating a solid cylinder than the rollers which were required to inspect the stent, so that should make things easier. – Mozglubov Sep 15 '13 at 19:57
  • Sorry for the delayed response.I have a rotating cylinder. I will have to use calibration of course to map object dimension(in mm) to no. of pixels.To identify control points b/w two continuous frames a common background can be used which will be eliminated eventually after final cropping of the panorama(this might eliminate the problem of curved nature of the image to an extent). And I don't think training is an answer since shape and size of the scratches may vary drastically and don't forget about dents(how can you train dents ??) – Abhishek Srivastava Sep 27 '13 at 11:57
  • I'm not really clear what you are asking about in this comment. You are trying to create an image of the cylinder manifold; the calibration cylinder will tell you how knit each frame together by giving the physical dimensions (such as rotation rate). Yes, you will want to crop out the background (and potentially part of the cylinder from each frame to minimize illumination changes due to the cylinder curvature). I don't understand what you are asking about in terms of training, then. – Mozglubov Sep 30 '13 at 18:57
  • For dents, you may be able to detect them using the cylinder profile (see the patent I linked to in an earlier comment; this would be equivalent to the protruding defect detection). If the contrast between the background and cylinder is strong enough, you should be able to reliably detect the edge of the cylinder. Any significant dent should be seen as a deviation in the cylinder profile when it is perpendicular to the camera. With enough images measuring this side profile after small rotational changes, you should be able to detect dents fairly reliably. – Mozglubov Sep 30 '13 at 19:02
-1

Working on a similar problem. what did you end up doing?. I have a area scan camera and want to create a stitched image of the a rotating object (wheel).

  • This is not an answer, if you are interested in a possible answer you can follow or bookmark this question. If you have a similar question, but different from this one, you may post your own question. – Paul Dec 29 '21 at 12:56
  • This does not really answer the question. If you have a different question, you can ask it by clicking [Ask Question](https://stackoverflow.com/questions/ask). To get notified when this question gets new answers, you can [follow this question](https://meta.stackexchange.com/q/345661). Once you have enough [reputation](https://stackoverflow.com/help/whats-reputation), you can also [add a bounty](https://stackoverflow.com/help/privileges/set-bounties) to draw more attention to this question. - [From Review](/review/late-answers/30694693) – Codemaker2015 Dec 31 '21 at 05:50