Vertical Projection Profile Opencv Python

’s profile on LinkedIn, the world's largest professional community. OpenCV for Python enables you to run computer vision algorithms smoothly in real time, combining the best of the OpenCV C++ API and the Python language. REDUCE_SUM, dtype=cv2. The equirectangular projection was used in map creation since it was invented around 100 A. OpenCV provides a tracing facility for efficient development of Computer Vision Applications. 3 Ghz Dual-core processor in 2013. 2009 - Python for Multimedia Workshop at NII 2004 - Network option for bioinformatic students at U. and then looking at the horizontal and vertical projection profile (simply. 4) Kivy: Kivy is an open source Python library for developing mobile apps and other multitouch application software with a natural user interface (NUI). Ambroise’s education is listed on their profile. In this lesson we will learn how to plot 3D, contour, and profile plots. View Charl Botha’s profile on LinkedIn, the world's largest professional community. In this video lecture you will learn the histogram functions available in opencv library and how to plot 2D histogram for an image download the file files fr. Python - Date & Time - A Python program can handle date and time in several ways. Fixed build with. It can be implemented by convolving I with Sobel kernels Kx and Ky. x git excel windows xcode multithreading pandas database reactjs bash scala algorithm eclipse. OpenCV is a specialized library, focused on image processing and computer vision. The script face_detector_haar. Major python libraries used: OpenCV, Keras (with callbacks) horizontal and vertical panorama images from some chosen set of images. Now i need to calculate vertical and horizontal projection histogram for this image. I got the coordinates. Currently Python is the most popular Language in IT. Well, in between client work I've moved a bit forward. Jani has 7 jobs listed on their profile. It uses canny and then does a contour find to return the sides of each square. Using OpenCV, I have found that a quite reliable solution is based on (i) the use of the Hough transform, and (ii) the computation of the intersection of the lines we get. Computational photography is about enhancing the photographic process with computation. pip install numpy. Henri Dang wrote a great tutorial about Color Detection in Python with OpenCV. PM and Developer, Python , OpenCV, Ir Sensors, Ir Camera · Contribute to android-touch-surface development by creating an account on … · More GitHub. Data for such plots can be organized as XYZ columns or an array of cells in a worksheet, or in a matrix window. Its input is just grayscale image and output is our histogram equalized image. You will learn the basics of image processing and see how powerful image processing can be even without the help of. The nice thing is that OpenCV has a function that automatically detects the corners of this chessboard pattern. How would I do it in OpenCV python?. In pyFAI, the beam center is not directly used as it is ill-defined with highly tilted detectors. You simply provide an image and the size of the chessboard used (the number of horizontal and vertical inner corner points). This can be verified with trying to install it with the Python package manager pip, which is a recursive acronym that stands for "Pip installs Packages". 2009 - Python for Multimedia Workshop at NII 2004 - Network option for bioinformatic students at U. py # projection of 3D sphere center onto the # Set vertical view angle as a. NO_VERTICAL —The z-values of geometry coordinates will be ignored. Also, the object histogram should be normalized before passing on to the backproject function. How to plot a graph or histogram using Opencv? Deleted profile. It demonstrats how to train the data and recongnize digits from previously trained data. They are extracted from open source Python projects. NumPy is a Python library that simplifies doing numerical operations on arrays. The thing is I am looking for something very simple maybe. In this blog post, I demonstrated how to use crontab to launch a Python + OpenCV script on reboot. Related course: Master Computer Vision with OpenCV Histogram example Given an image we can generate a histogram for the blue, green and red values. Going the vertical branch is left as an exercise to the reader. Charl has 10 jobs listed on their profile. Its parameters are almost same as the cv2. 1 Camera projection Matrix [30 pts] Study the Projection and Dolly Zoom notebook released on course website and finish the following tasks. I started working on SURF feature detector based Tracking algorithm using OpenCV python bindings and SimpleCV. Fitting the sensor gate and the resolution gate has an impact on the final field of view. Using OpenCV, I have found that a quite reliable solution is based on (i) the use of the Hough transform, and (ii) the computation of the intersection of the lines we get. Face alignment with OpenCV and Python. Projection profile method; Hough transform. The current implementation limits it to be between 1 and 179 degrees. Perhaps this comes out of some of my security and privacy work, but I try not to participate much on social media. and then looking at the horizontal and vertical projection profile (simply. The No Title® Tech Blog New project: Nice Telescope Planner. Backprojection in OpenCV. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. Great for beginners looking for a high-tech project to work on! See more. Camera Calibration and 3D Reconstruction¶. We won't debate on which library is the best here, they all have their merits. Azimuthal projections have rotational symmetry around the centre of the image, these are the kind of images that are produced by the various kinds of camera lens. the histogram looks like this. Finding the maximum character space and used it for separating the words. opencv图像处理 载入图像opencv的全称是:Open Source Computer Vision Library。opencv是一个基于(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows和Mac OS操作系统上。它轻量级而且高效--由一系列 C 函数和少量 C++ 类构成,同时提供. Hi, Is there any function in OpenCV that can give Intensity profile across any specific line (horizontal or vertical) in an image?. Hough Tranform in OpenCV¶ Everything explained above is encapsulated in the OpenCV function, cv2. One example of a process which is spoilt by skew is the use of horizontal and vertical projection profiles. I was surprised to be contacted to do this interview because I think of myself as having a pretty low profile in the Python community outside of San Diego. The functions in this section use the so-called pinhole camera model. A Computer Science portal for geeks. Using the explicit finite difference method. OK, I Understand. pip install opencv-python >>>> import cv2. python training in bangalore aws training in bangalore artificial intelligence training in bangalore data science training in bangalore machine learning training in bangalore. medianBlur(). As we imagine the projection planes we can get the front view and distance relation as given here. Learning Robotics using Python. Is there a way to compute vertical and horizontal projection of curves in OpenCV ? For example in this paper, they have computed vertical projection of written signatures. What does projection matrix provided by the calibration represent? How to get opencv on electric precise (ubuntu 12. 32 questions Tagged. x, run the command python3. See the complete profile on LinkedIn and discover Babak’s connections and jobs at similar companies. 4) Kivy: Kivy is an open source Python library for developing mobile apps and other multitouch application software with a natural user interface (NUI). ppm image, draws its. 4, in this tutorial you can find line by line the code and explanations of a hand gesture recognition program written in C language; OpenCV Python hand gesture recognition - tutorial based on OpenCV software and Python language aiming to recognize. com/design-your-own/?product_id=2860 jacky_chi http://www. Using Python, pygame, numpy, opencv, tracks the objects and works out the vertical difference between them to figure out direction and magnitude. hello everyone! i am trying to segment a word into characters using vertical projection of histogram. Codementor is the largest community for developer mentorship and an on-demand marketplace for software developers. Another projection matrix, that can enhance the feeling of real world is the perspective projection matrix, in this case the volume is a frustum and not a parallelepiped. With the detector being a rigid body, its position in space is described by six parameters: 3 translations and 3 rotations. 32 questions Tagged. To get in-depth knowledge on python along with its various applications, you can enroll for live Python online training by Edureka with 24/7 support and lifetime access. One of its parameter is histogram which is histogram of the object and we have to find it. Manh has 6 jobs listed on their profile. With TouchDesigner’s integration of Python, we were able to implement the same functionality into a standalone tool which lets you map complex structures in a small amount of time. 2 numpy arrays i. These libraries are unofficial, but it's not something to worry about, it just means they are not endorsed or supported directly by the folks at OpenCV. You may want to use histograms for computer vision tasks. Learning Robotics using Python. Python doesn't have a built-in type for matrices. I couldn't use the histogram functions descriped in openCV doc , because it try to find color histogram , and the question try to find projection in on X-axis and Y-axis for black and white image. Learn more about caharacter segmentation, vertical projection. 5 years on multiple projects from Infrastructure as a Code [IAAC] initiative to develop private cloud platform, HP storage firmware and platform tools team and development of Language libraries for HPE3PAR. Building OpenCV for Tegra with CUDA Load and Display an Image Load, Modify, and Save an Image Writing documentation for OpenCV Transition guide Cross referencing OpenCV from other Doxygen projects The Core Functionality (core module) Mat - The Basic Image Container How to scan images, lookup tables and time measurement with OpenCV. x or compatible with the ecosystem of packages we need (yet). Whether your business is early in its journey or well on its way to digital transformation, Google Cloud's solutions and technologies help chart a path to success. However, tracing vertical information which leads to tracking words-characters in a run-length compressed file is not very. These balls were used to calculate the angle between the string and the vertical line in order to detect if the camera was tilted while taking the video. Select a vertical block of text in Word. This method is used mainly in the complex recognition systems with multiple cameras, computing 3D model "on the fly", at the moment of the face detection (Shahriar, 2007). View Manh Truong Tuan’s profile on LinkedIn, the world's largest professional community. NumPy is a Python library that simplifies doing numerical operations on arrays. LabTalk Object Type: External Object. Calculating a depth map from a stereo camera with OpenCV. This post will talk about how to implement histogram back projection with openCV2. com/design-your-own/?product_id=2860 jacky_chi http://www. Assignment. Also using a small unit like a Raspberry Pi can be enough to create tasks such as face detection and recognition. A further point for the implementation of the menu functions in python is the reason, that python supports OpenCV [5] constituting the foun-. We pride ourselves on high-quality, peer-reviewed code, written by an active community of volunteers. The purpose of this blog post is to demonstrate how to align a face using OpenCV, Python, and facial landmarks. 4, in this tutorial you can find line by line the code and explanations of a hand gesture recognition program written in C language; OpenCV Python hand gesture recognition - tutorial based on OpenCV software and Python language aiming to recognize. Projection profile is calculated separately for different axis. HoughLines(). The current implementation limits it to be between 1 and 179 degrees. A quick demo on face detection with python 3 and opencv 3 Here, I record how to write a simple code for face detection with Harr-like features, which is based on python 3 and opencv 3. We then calculate the vertical field of view in degrees with the help of the image height and the camera’s focal length as well as the aspect ratio. There is a python sample in the official samples already for finding color histograms. Works in C, C++, and Python. Interactive immersive show developed during the third year of studies at Universidad Católica del Uruguay. x (librealsense 2. This projection is 'equal area', making it very compact and suitable for purposes where distortion isn't important, similar to Sinusoidal projection. 32 questions Tagged. x, run the command python3. Caili(Charlie) has 3 jobs listed on their profile. Below is a simple code snippet showing its usage for same image we used :. Vertical Projection. How would I do it in OpenCV python?. View Aleksey Dolgih’s profile on LinkedIn, the world's largest professional community. The following are code examples for showing how to use cv2. 3 Ghz Dual-core processor in 2013. Use the hough/radon transform as suggested by Martino Jerian. See the complete profile on LinkedIn and discover Vasil’s connections and jobs at similar companies. Projection profiles (also called projection histograms) are a common technique to determine where in the image the objects are. You may refer to this Wikipedia entry:https:. Explanation: Given the line is of length 10 inches present on profile plane and ends are at 5 and 3 inches away from vertical plane. The latest Tweets from Davor Jordacevic (@DavorJordacevic). You may want to use histograms for computer vision tasks. With the detector being a rigid body, its position in space is described by six parameters: 3 translations and 3 rotations. cdist(X,Y,'sqeuclidean') for fast computation of Euclidean distance. After the profile graph is created, you can select different units from the drop-down menus, and the profile graph and the axes will be redrawn accordingly. See the complete profile on LinkedIn and discover Jani’s connections and jobs at similar companies. In this article, we'll see what augmentation is, and how to use them in Keras. Also, the object histogram should be normalized before passing on to the backproject function. See the complete profile on LinkedIn and discover Alexandre’s connections and jobs at similar companies. ) 4) Determine the written order of blobs: Start each iteration by calling the function get_blobs_sorted_by_distance_from_previous_blob, which gives you a list of blobs sorted by distance from previous blob. org is a must if you want to explore and dive deeper into image processing and machine learning in general. The code is using new Python interface, cv2. ; python 3 # opens python 3. Instead it has to be imagined like a toolbox that can be used with Python. pip install numpy. OpenCV(Python) Vertical and Horizontal Binary Histogram Projection Line Chart. The function is parallelized with the TBB library. In this tutorial, I'll be taking you through the basics of developing a vehicle license plate recognition system using the concepts of machine learning with Python. The change to the cursor will be applicable only to the window you make the change to. py below is just slightly modified from the post written by Shantnu Tiwari. Is there a way to detect partial/irrgular circles grid with openCV using Python? edit. To make it simpler: For Back Projection, you calculate the histogram model of a feature and then use it to find this feature in an image. x, run the command python3. and then looking at the horizontal and vertical projection profile (simply. #VSCode – Let’s do some #FaceRecognition with 20 lines in #Python (2/N) Hi ! Yesterday I explained how to write a couple of lines in Python to perform live face detection in a webcam feed [ Post ]. Vertical Projection. OpenCV is a Library which is used to carry out image processing using programming languages like python. Great for beginners looking for a high-tech project to work on! See more. projection. If you want to use python version 3. e“histogram” using opencv. Investigations of the long-term stability of a Gas Electron Multiplier based readout technology for a Time Projection Chamber of the future International Linear Collider. projection × 1k OpenGL Camera to OpenCV Projection matrix. Topline method. 4) Kivy: Kivy is an open source Python library for developing mobile apps and other multitouch application software with a natural user interface (NUI). 이 포스팅에서는 위의 사진에서 네모난 사진들을 crop해볼것이다. js sql-server iphone regex ruby angularjs json swift django linux asp. Python - Date & Time - A Python program can handle date and time in several ways. The focus of this post was really on just the projection matrix, but matching the modelview matrix is fairly straightforward if your cameras are calibrated. i used the following code the find vertical and herozontal projection. Object recognition with opencv with Haar cascades (what is haar cascade, how to use and create one). I’m happy to do it, though. Python, Ruby and Java (using JavaCV) have been developed to encourage adoption by a wider audience. Histograms Equalization in OpenCV¶ OpenCV has a function to do this, cv2. 3 Ghz Dual-core processor in 2013. The purpose of this blog post is to demonstrate how to align a face using OpenCV, Python, and facial landmarks. So my mid-terms got over this Monday and I had no idea whatsoever what happened in the 1 week of exams. You need to explain further, if you can't figure it out yourself. Assignment: Simulate the vertical velocity profile of a liquid between two infinitely long plates separated by 40mm. For the first part, OpenCV has two main options, the Standard Hough Transform (SHT), and the Progressive Probabilistic Hough Transform (PPHT). Babak has 3 jobs listed on their profile. You should see the OpenCV window open with your video stream and the words "OpenCV Image" printed across the image in yellow text; something like this: The test vision node is subscribing to the raw camera image on the /camera/raw topic. Lecturer/Lecturer below the bar in 3D Modelling, Animation and Digital Fabrication at University of Limerick. Camera Calibration and 3d Reconstruction¶. 1 Camera projection Matrix [30 pts] Study the Projection and Dolly Zoom notebook released on course website and finish the following tasks. calcOpticalFlowPyrLK See also the OpenCV sample motempl. OpenCV-Python Tutorials. Learn more about horizontal and vertical projection of an image MATLAB. One example of a process which is spoilt by skew is the use of horizontal and vertical projection profiles. Build your first face tracking program and use servos to mimic your motion. Motion Analysis and Object Tracking Python: cv2. OpenCV Computer Vision with Python. vertical_hd_60; Mlt++ now requires C++11 compiler support. The projection profile exhibits valleys of zero height corresponding to white space between the text words. Learn more about caharacter segmentation, vertical projection. In many applications, we need to know how the head is tilted with respect to a camera. 04)? Using ROS for a Delta Robot Necromancer × 4. To perform a vertical transformation, check the optional Vertical parameter on the dialog box. The input arrays and the output array can all have the same or different depths. matlab code for character segmentation by horizontal and vertical projection profile 170649-matlab-code-for-character-segmentation-by-horizontal-and-vertical. OpenCV was designed for computational efficiency and with a strong focus on real-time applications. While not a requirement, the current implementation retains the height to width ratio of the output image to the same as the vertical aperture to horizontal aperture. I couldn't use the histogram functions descriped in openCV doc , because it try to find color histogram , and the question try to find projection in on X-axis and Y-axis for black and white image. cstride for default sampling method for wireframe plotting. View Aleksey Dolgih’s profile on LinkedIn, the world's largest professional community. imgmsg_to_cv. Start with the project saved from the previous lesson and add a new folder named 3D and Contour. calcBackProject(). Or, if you summed it horizontally across bins, you'd get a 1D array the meaning of which I'm not quite sure how to interpret and not sure why you'd want it. Perhaps this comes out of some of my security and privacy work, but I try not to participate much on social media. They are extracted from open source Python projects. To detect it, the easiest way is to apply filters that highlight this intensity change in both directions: horizontal (x) and vertical (y) When the image is smoothed, the derivatives Ix and Iy w. This can be verified with trying to install it with the Python package manager pip, which is a recursive acronym that stands for "Pip installs Packages". Great for beginners looking for a high-tech project to work on! See more. Sublime Text for Python development — My 2016 review – When you ask for editor recommendations as a Python developer one of the top choices you’ll hear about is Sublime Text. #VSCode – Let’s do some #FaceRecognition with 20 lines in #Python (2/N) Hi ! Yesterday I explained how to write a couple of lines in Python to perform live face detection in a webcam feed [ Post ]. hello guys, i've been using opencv and visual studio to try a face detection program and it works. 14, wrf-python can be built using the MSVC compiler with gfortran. This method allows to project a surface onto planes perpendicular to the z, x or y-direction in the 3d space and interpret the projection as a planar surface colored according to the z, x or y value at each point of the coresponding plane. In This article, belonging to the OpenCV series with Python, we will talk about the analysis of contours and gradients of an image. scikit-image is a collection of algorithms for image processing. Q is known as the disparity-to-depth mapping matrix. For example, the CESM grids do not change with time, while the WRF model(s) allow for this possibility by making the latitude and longitude arrays a function of time. OpenCV provides a tracing facility for efficient development of Computer Vision Applications. hi , i try segment character using vertical and horizontal projection but I could not do. I found the centroid of the contour for my program using opencv -python. …I'm going to go ahead. So, what if our complex Python application needs a database that’s just as flexible as the language. Is there a way to compute vertical and horizontal projection of curves in OpenCV ? For example in this paper, they have computed vertical projection of written signatures. i can find the histogram and i am able to find the threshold value. The thing is I am looking for something very simple maybe. These arguments will determine at most how many evenly spaced samples will be taken from the input data to generate the graph. python language, tutorials, tutorial, python, programming, development, python modules, python module. Credits I got the idea of using the Prokudin-Gorskii collection to demonstrate image alignment from Dr. TechnoLabsz Into the New Technology. scikit-image is an image processing library that implements algorithms and utilities for use in research, education and industry applications. We will understand Harris & Shi-Tomasi Corner Detection algorithms & see how to…. Android Switching Between Activities – Example October 6, 2016 Raj Amal Android Development 5 Comments If you are a beginner in Android development, the first thing you wish to do is to create two screens and try to switch from one screen to another. After flying this past weekend (together with Gabriel and Leandro) with Gabriel's drone (which is an handmade APM 2. Azimuthal projections have rotational symmetry around the centre of the image, these are the kind of images that are produced by the various kinds of camera lens. Hi guys I am doing a project on offline signature recognition and verification. We will see how thanks to the application of some filters you can highlight the trend of color gradient and in particular to detect the contours or edges of an image. I started working on SURF feature detector based Tracking algorithm using OpenCV python bindings and SimpleCV. i used the following code the find vertical and herozontal projection. Fixed compiling with mingw32. Also, the object histogram should be normalized before passing on to the backproject function. Horizontal Projection profile is the projection profile of a image along horizontal axis. is measured in pixels and is measured in radians. How to flip an image in OpenCV. Rotation in 3D using OpenCV's warpPerspective In order to easily rotate an image in 3D space, I have written a simple method that will do just that. Shotton et al. [Riaz Munshi] -- "This course features some trending applications of vision and deep learning and will help you master these techniques. One nice thing that can be done with the latest technology is a really powerful image analysis. The z-values will be left unmodified. For example, OpenCV (www. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. One of the first steps in developing OCR systems is line detection. Projection profile is calculated separately for different axis. 4) Kivy: Kivy is an open source Python library for developing mobile apps and other multitouch application software with a natural user interface (NUI). See the complete profile on LinkedIn and discover Joseph’s connections and jobs at similar companies. AndreaCH is on FabScan. To perform a vertical transformation, check the optional Vertical parameter on the dialog box. Since parts of the image will be occluded, it is difficult to generate surface profile information across the complet e part. You can find a Python adaptation here: sobel. In this article, we'll see what augmentation is, and how to use them in Keras. The region could now be processed in a certain manner and pasted back. and Python. In this tutorial, I'll be taking you through the basics of developing a vehicle license plate recognition system using the concepts of machine learning with Python. I need to save those numerical. x, run the command python3. Alexandre has 8 jobs listed on their profile. 네모난 박스를 체크하고 해당 부분을 잘라 저장할 것이다. c that demonstrates the use of all the motion template. Python, OpenCV, pair is to determine the rotation and vertical offset between the two cameras. 04)? Using ROS for a Delta Robot Necromancer × 4. This tutorial describes the installation of Kivy on various platforms and gives the code for building a few simple apps. What does projection matrix provided by the calibration represent? How to get opencv on electric precise (ubuntu 12. I have made program that has a number of OpenCV cuda calls. Converting a fisheye image into a panoramic, spherical or perspective projection Written by Paul Bourke November 2004, updated July 2016. I couldn't use the histogram functions descriped in openCV doc , because it try to find color histogram , and the question try to find projection in on X-axis and Y-axis for black and white image. (a)Write a function rotY() which takes an angle theta (in radian) and outputs the 3D rotation matrix of rotating by theta about the y-axis (right-hand rule). The camera is never vertical to the target so there is a significant perspective distortion and I need a bird's eye view. Automatic Vision Object Tracking : On my last tutorial, we explored how to control a Pan/Tilt Servo device in order to position a PiCam. You may refer to this Wikipedia entry:https:. But when the road is having some potholes and bumps than some vertical vibrations components occurs and after that the lines after IMP are not parallel, the have some angle between dependent on the force was caused by road defects. Contours - 1 : Getting Started Hi, this article is a tutorial which try to cover all relevant functions in OpenCV dealing with Structural Analysis and Shape Descriptors , which are mainly related to contours. …And so we can do what's called projection…and project these objects on a profile view. The function returns, R, in which the columns contain the Radon transform for each angle in theta. My question is, whether the front and side faces (facial profile) can be detected simultaneously (at one time in one program)? i already called the lbpcascade_profileface. Item&itemID=723&acctID=3869 [email protected] e"histogram" using opencv. first detect the lines , by using horizontal projection , and decide where is the peaks larger than 1/2 image width , this will be line in music sheet. Not too long ago I mentioned I was playing around with opencv and python. Why did you start using Python?. And I have covered this problem in. Reading CSV Files Example. Pillow is a fork of the. ; python 3 # opens python 3. equalizeHist(). The mouse cursor can be set to one of the operating system cursors, a custom image, or hidden completely. Android Switching Between Activities – Example October 6, 2016 Raj Amal Android Development 5 Comments If you are a beginner in Android development, the first thing you wish to do is to create two screens and try to switch from one screen to another. Thanks to Igor Carron for pointing out this video lecture Compressive Sensing for Computer Vision: Hype vs Hope It start with comprehensible explanation of what compressive sensing is about (BTW wiki article on compressive sensing is wholly inadequate). You can find a Python adaptation here: sobel. segmentation is done by the vertical projection profile. The default profile graph title is based on the name of the feature layer being graphed. com, India's No. Motion Analysis and Object Tracking Python: cv2. I was surprised to be contacted to do this interview because I think of myself as having a pretty low profile in the Python community outside of San Diego. Often, it will be necessary to find the sum of pixels in each column of an image. Sehen Sie sich das Profil von Avinash Chikkadlur Ravi Shankar auf LinkedIn an, dem weltweit größten beruflichen Netzwerk. The function also returns the vector, xp, which contains the corresponding coordinates along the x-axis. This transform is also the basis of more advanced morphological operations such as thinning or pruning. The following are code examples for showing how to use cv2. OK, I Understand. Assignment. x (librealsense 2. See the complete profile on LinkedIn and discover Paulius’ connections and jobs at similar companies. However, tracing vertical information which leads to tracking words-characters in a run-length compressed file is not very. View Charl Botha’s profile on LinkedIn, the world's largest professional community. Hough Tranform in OpenCV¶ Everything explained above is encapsulated in the OpenCV function, cv2. You can also save this page to your account. Xarray is a Python package that makes working with multi-dimensional labeled data (i. Introduction. Use the hough/radon transform as suggested by Martino Jerian.