直線係数を最小自乗法で求め直す(実数型エッジ点群)
Namespace: fvalgcliAssembly: fvalgcli (in fvalgcli.dll) Version: 3.1.0.0 (3.1.0.11)
Syntax
C# |
---|
public static int fnFIE_hough_lines_refine_line_d(
ref F_LH_LINE line,
F_DEDGE_PTR edges,
int edge_num,
double err_r,
double err_q,
ref int pnt_num
) |
Visual Basic |
---|
Public Shared Function fnFIE_hough_lines_refine_line_d (
ByRef line As F_LH_LINE,
edges As F_DEDGE_PTR,
edge_num As Integer,
err_r As Double,
err_q As Double,
ByRef pnt_num As Integer
) As Integer |
Parameters
- line
- Type: fvalgcli..::..F_LH_LINE%
直線係数
- edges
- Type: fvalgcli..::..F_DEDGE_PTR
エッジ点群(エッジ勾配方向、強度共に必要なし)
- edge_num
- Type: System..::..Int32
エッジ点( edges )の数
- err_r
- Type: System..::..Double
ρ方向許容誤差(0以上, 単位:ピクセル)
- err_q
- Type: System..::..Double
θ方向許容誤差(0以上, 単位:度)
- pnt_num
- Type: System..::..Int32%
直線の上にあるエッジ点の数
Return Value
Type:
Int32
以下のエラーコードを返します。
エラーコード:f_err | 内容 |
---|
F_ERR_NONE | 正常終了 |
F_ERR_NOMEMORY | メモリ不足エラー |
F_ERR_INVALID_PARAM | 不正なパラメータが渡された |
F_ERR_CALC_IMPOSSIBLE | 直線の係数が不定となるようなデータが与えられたための異常終了 |
F_ERR_CALC_OVERFLOW | 計算の途中でオーバーフローが起こったための異常終了 |
F_ERR_NO_LICENCE | ライセンスエラー、または未初期化エラー |
Remarks
Examples
C# | Copy |
---|
using System;
using System.Collections.Generic;
using System.Text;
using fvalgcli;
namespace TC
{
public partial class FIE
{
public void fnFIE_hough_lines_refine_line_d(ref F_LH_LINE ans_line, F_DEDGE_PTR edges, int edge_num, double err_r, double err_q, ref int pnt_num)
{
try
{
int status = api.fnFIE_hough_lines_refine_line_d(ref ans_line, edges, edge_num, err_r, err_q, ref pnt_num);
Assert.IsTrue(status == (int)f_err.F_ERR_NONE, "fnFIE_hough_refine_line_d: エラーが発生しました。({0})", (f_err)status);
Console.WriteLine("fnFIE_hough_lines_refine_line_d");
Console.WriteLine("pnt_num={0}", pnt_num);
}
finally
{
}
}
}
} |
Visual Basic | Copy |
---|
Imports System.Collections.Generic
Imports System.Text
Imports fvalgcli
Public Partial Class FIE
Public Sub fnFIE_hough_lines_refine_line_d(ByRef ans_line As F_LH_LINE, edges As F_DEDGE_PTR, edge_num As Integer, err_r As Double, err_q As Double, ByRef pnt_num As Integer)
Try
Dim status As Integer = api.fnFIE_hough_lines_refine_line_d(ans_line, edges, edge_num, err_r, err_q, pnt_num)
Assert.IsTrue(status = CInt(f_err.F_ERR_NONE), "fnFIE_hough_refine_line_d: エラーが発生しました。({0})", CType(status, f_err))
Console.WriteLine("fnFIE_hough_lines_refine_line_d")
Console.WriteLine("pnt_num={0}", pnt_num)
Finally
End Try
End Sub
End Class |
See Also