Where do I start learning about image processing and object recognition? [closed]
You may want to check out the answers to these similar question: Image processing language/environment
You may want to check out the answers to these similar question: Image processing language/environment
We can get Euler angles from rotation matrix using following formula. Given a 3×3 rotation matrix The 3 Euler angles are Here atan2 is the same arc tangent function, with quadrant checking, you typically find in C or Matlab. Note: Care must be taken if the angle around the y-axis is exactly +/-90°. In that … Read more
You can use: image = cv2.copyMakeBorder(src, top, bottom, left, right, borderType) Where src is your source image and top, bottom, left, right are the padding around the image. You can use max(sizes) – size value of the image in a while loop to add the padding to each image. The bordertype can be one of … Read more
The following code adds a constant border of size 10 pixels to all four sides of your original image. For the colour, I have assumed that you want to use the average gray value of the background, which I have calculated from the mean value of bottom two lines of your image. Sorry, somewhat hard … Read more
Your problem’s quite standard in the field. Firstly, you need to calibrate your camera. This can be done offline (makes life much simpler) or online through self-calibration. Calibrate it offline – please. Secondly, Once you have the calibration matrix of the camera K, determine the projection matrix of the camera in a successive scene (you … Read more
There are a number of approaches you can take but the first strategy that pops into mind is to: Discovery/research: Identify the set of colors and fonts that you may need to identify. If your sample picture is representative of most British plates then your job is made easier. E.g. Simple, singular font and black … Read more
Although I was expecting an automatic solution (fitting to the screen automatically), resizing solves the problem as well. import cv2 cv2.namedWindow(“output”, cv2.WINDOW_NORMAL) # Create window with freedom of dimensions im = cv2.imread(“earth.jpg”) # Read image imS = cv2.resize(im, (960, 540)) # Resize image cv2.imshow(“output”, imS) # Show image cv2.waitKey(0) # Display the image infinitely until … Read more
The code that you have written is comparing the histogram between images, provided that they’re grayscale. If you want to do this for RGB images, you need to determine how many bins you want per plane. Once you do this, for each RGB colour triplet that you have, you would determine a linear 1D index … Read more
To extend Otsu’s thresholding method to multi-level thresholding the between class variance equation becomes: Please check out Deng-Yuan Huang, Ta-Wei Lin, Wu-Chih Hu, Automatic Multilevel Thresholding Based on Two-Stage Otsu’s Method with Cluster Determination by Valley Estimation, Int. Journal of Innovative Computing, 2011, 7:5631-5644 for more information. http://www.ijicic.org/ijicic-10-05033.pdf Here is my C# implementation of Otsu … Read more
As I mentioned in the comments, watershed looks to be an ok approach for this problem. But as you replied, defining the foreground and the background for the markers is the hard part! My idea was to use the morphological gradient to get good edges along the ice crystals and work from there; the morphological … Read more