Форум программистов, компьютерный форум CyberForum.ru

Как найти расстояние между 2 линиями (OpenCV)? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Создать иерархию типов, описывает данные - сигнал http://www.cyberforum.ru/cpp-beginners/thread1563257.html
Создать иерархию типов, описывает данные - сигнал, данные результат обработки и данные, как результат обработки сигнала и будучи сигнал. классы должны иметь конструкторы, включая конструктор копирования, виртуальные деструкторы, перегружены функции Вывод в поток и ввод из потока. помогите сделать в С ++
C++ Get Color from Panel Ребята, приветствую! Использую интерактивное отображение цветов с помощью панели и крашу её обычным для неё способом MyPanel -> Color = TColor(RGB(R,G,B)); Собственно радовался этому чуду пока не встал вопрос как взять цвет с покрашенной ранее панели? Первое что интуитивно могло бы придти в голову это int R = MyPanel -> GetColor(?); Добавлено через 14 минут Или ... int R =... http://www.cyberforum.ru/cpp-beginners/thread1563251.html
C++ Реализавать алгоритм вычисления подходящих дробей
Помогите пожалуйста написать программу. Необходима реализация алгоритма вычисления подходящих дробей.
C++ Поиск функции Эйлера для положительного целого числа
Помогите с программой пожалуйста. Необходимо написать программу поиска функции Эйлера для положительного целого числа.
C++ "Лучший" механизм подмены типа данных? http://www.cyberforum.ru/cpp-beginners/thread1563223.html
Добрый день! Имеется функция возврата значения из базы данных ввода/вывода (имеется ввиду modbus-регистры) которая возвращает значение в формате INT16: INT16 dbase(UINT16 type, UINT16 address); Каким образом считать из базы данных значение типа float? Кроме как подменить тип данных вариантов не вижу. На данный момент я реализовал вот такую функцию: float readRegFloat(UINT16 addrReg) {...
C++ Найти сумму первых 5 нечетных чисел, вводимых с клавиатуры подсчитать сумму первых 5 нечетных чисел из промежутка вводимого с клавиатуры подробнее

Показать сообщение отдельно
MValeriy
0 / 0 / 0
Регистрация: 14.10.2015
Сообщений: 28
29.10.2015, 12:22  [ТС]     Как найти расстояние между 2 линиями (OpenCV)?
Цитата Сообщение от OstapBender Посмотреть сообщение
каждая линия задана 2-мя точками, возьми среднее и вычти
а есть пример как это сделать? как получить координаты точек, и как собственно вычислить потом расстояние между ними? Что то никак не могу добраться до истины

Добавлено через 3 минуты
Если можно на примере программки:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
#include "opencv2/highgui/highgui.hpp"
#include "opencv2/imgproc/imgproc.hpp"
 
#include <iostream>
 
using namespace cv;
using namespace std;
 
void help()
{
 cout << "\nThis program demonstrates line finding with the Hough transform.\n" << endl;
}
 
int main(int argc, char** argv)
{
 const char* filename = argc >= 2 ? argv[1] : "2.jpg";
 
 Mat src = imread(filename, 0);
 if(src.empty())
 {
     help();
     cout << "can not open " << filename << endl;
     return -1;
 }
 
 Mat dst, cdst;
 Canny(src, dst, 50, 200, 3);
 cvtColor(dst, cdst, CV_GRAY2BGR);
 
 #if 0
  vector<Vec2f> lines;
  HoughLines(dst, lines, 1, CV_PI/180, 100, 0, 0 );
 
  for( size_t i = 0; i < lines.size(); i++ )
  {
     float rho = lines[i][0], theta = lines[i][1];
     Point pt1, pt2;
     double a = cos(theta), b = sin(theta);
     double x0 = a*rho, y0 = b*rho;
     pt1.x = cvRound(x0 + 1000*(-b));
     pt1.y = cvRound(y0 + 1000*(a));
     pt2.x = cvRound(x0 - 1000*(-b));
     pt2.y = cvRound(y0 - 1000*(a));
     line( cdst, pt1, pt2, Scalar(0,0,255), 3, CV_AA);
  }
 #else
  vector<Vec4i> lines;
  HoughLinesP(dst, lines, 1, CV_PI/180, 50, 50, 10 );
  for( size_t i = 0; i < lines.size(); i++ )
  {
    Vec4i l = lines[i];
    line( cdst, Point(l[0], l[1]), Point(l[2], l[3]), Scalar(0,0,255), 3, CV_AA);
  }
 #endif
 imshow("source", src);
 imshow("detected lines", cdst);
 
 waitKey();
 
 return 0;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru