灵闪工具 | LPV 类 / 函数 |
单阈值 - 二值化 | LImageThreshold::Binarize |
单阈值 - 阈值距离 | LImageThreshold::ThresholdDistance |
单阈值 - 自动阈值 | LImageThreshold::SetThresholdAdaptGlobal |
单阈值 - 自适应阈值 | LImageThreshold::SetThresholdAdaptLocal |
双阈值 - 裁剪 | LImageThreshold::Clip |
双阈值 - 拉伸 | LImageThreshold::Stretch |
双阈值 - 区间 | LImageThreshold::Binarize |
双阈值 - 自动阈值 | LImageThreshold::SetThresholdAdaptGlobal |
双阈值 - 自适应阈值 | LImageThreshold::SetThresholdAdaptLocal |
图像增强 - 均衡 | LImageFilter::Equalize |
图像增强 - 锐化 | LImageFilter::Sharpen |
图像增强 - 高通 | LImageFilter::HighPass |
图像增强 - 低通 | LImageFilter::Gaussian |
图像增强 - 取反 | LImageOp::Invert |
图像增强 - 中值 | LImageFilter::LocalMedian |
图像增强 - 中值边缘 | LImageFilter::LocalMedianNorm |
图像增强 - 光密度 | LImageFilter::OpticalDensity |
图像增强 - 均值 | LImageFilter::MeanFilter |
图像增强 - 灰度增益 | LImageOp::GainOffset |
图像增强 - 保边去噪 | LImageFilter::EdgePreserveDenoise |
图像增强 - 保边去噪 - 纹理增强 | LImageFilter::EdgePreserveTextureEnhance |
边缘增强 - 边缘强度 | LImageMorph::Gradient |
边缘增强 - 全梯度 | LEdgeFilter::GradientFull |
边缘增强 - 水平梯度 | LEdgeFilter::GradientH |
边缘增强 - 垂直梯度 | LEdgeFilter::GradientV |
形态学 - 低帽 | LImageMorph::BottomHat |
形态学 - 高帽 | LImageMorph::TopHat |
形态学 - 闭操作 | LImageMorph::Close |
形态学 - 开操作 | LImageMorph::Open |
形态学 - 膨胀 | LImageMorph::Dilate |
形态学 - 腐蚀 | LImageMorph::Erode |
形态学 - 高低帽 | LImageMorph::TopBottomHat |
形态学 - Hit-Miss | – |
黑白 - RGB | LImageConvert, toColorSpace = LPVColorSpace::LPVColorSpaceBGR |
黑白 - HSV | LImageConvert, toColorSpace = LPVColorSpace::LPVColorSpaceHSV |
黑白 - HLS | LImageConvert, toColorSpace = LPVColorSpace::LPVColorSpaceHLS |
黑白 - Lab | LImageConvert, toColorSpace = LPVColorSpace::LPVColorSpaceLAB |
黑白 - XYZ | LImageConvert, toColorSpace = LPVColorSpace::LPVColorSpaceXYZ |
黑白 - YCrCb | LImageConvert, toColorSpace = LPVColorSpace::LPVColorSpaceYCrCb |
黑白 - LUV | LImageConvert, toColorSpace = LPVColorSpace::LPVColorSpaceLUV |
黑白 - YUV | LImageConvert, toColorSpace = LPVColorSpace::LPVColorSpaceYUV |
黑白 - 自定义 | LImageConvert::BGRMix |
彩色 | LImage::SetChannel |
自定义 | – |
裁剪 | LImage::Save |
缩放 | LImageOp::Resize, LImageOp::ResizeTo |
图像运算 - 加法 | LImageOp::Add |
图像运算 - 减法 | LImageOp::Sub |
图像运算 - 乘法 | LImageOp::Multiply |
图像运算 - 除法 | LImageOp::Divide |
图像运算 - 差值 | LImageOp::Diff |
图像运算 - 最小值 | LImageOp::Min |
图像运算 - 最大值 | LImageOp::Max |
图像运算 - 幂运算 | LImageOp::Pow |
图像运算 - 对数运算 | LImageOp::Log |
图像运算 - 位运算(与) | LImageOp::BitAnd, LImageOp::BitAndScalar |
图像运算 - 位运算(或) | LImageOp::BitOr, LImageOp::BitOrScalar |
图像运算 - 位运算(异或) | LImageOp::BitXor, LImageOp::BitXorScalar |
图像运算 - 位运算(非) | LImageOp::BitNot |
8位转换 | LImageConvert::Depth16To8 |
伪彩映射 | LImageConvert::ColorMap, LImageConvert::ColorMapMultiBand |
图像归一化 - 最大最小值归一化 | LImageOp::Normalize, LImageConvert::NormalizeTo8, LImageConvert::NormalizeTo16 |
图像归一化 - 均值标准差归一化 | LImageOp::NormalizeMeanStdDev |
自由变换 | LImageOp::Transform |
多帧融合 | LImageOp::Blend |
图像平铺 | LImageOp::TileX, LImageOp::TileY |
图像拆分 | LImageOp::Split, LImageOp::SplitX, LImageOp::SplitY |
HDR - 相机响应曲线建模 | LHDR::ToneMapping |
HDR - 多曝光融合 | LHDR::ExposureFusion |
前景检测 | LBGSubtract |
前景分割 | – |
比较 | LImageCompare |
配准 | – |
图像修补 | LImageFilter::FillHole |
边界扩充 | – |
透视变换 | LImageOp::Transform |
极坐标变换 | – |
光流 | – |
法向重建 | – |
偏振 | – |
灵闪工具 | LPV 类 / 函数 |
线到线的角度 - 角度范围为 90 时 | LLine::AcuteAngle,输出角度范围为 0° ~ 90° |
线到线的角度 - 角度范围为 180 时 | 调用 LLine::IntersectLine 获得两线段(包括在延长线上)的交点到两线段的两个中点组成的两个向量的夹角,输出角度范围为 0° ~ 180° |
线到线的角度 - 角度范围为 360 时 | LLine::AngleTo,输出角度范围为 0° ~ 360° |
线到线的距离 | LLine::Distance |
点到线的距离 | LLine::Perpendicular |
点到点的距离 | LPoint::Distance |
点到点的投影距离 | LPoint::DistanceWithRefLine |
最短距离 - 点与多边形 | LPolygon::DistanceToPoint, aggType = LPVAggregation::LPVAggMin |
最短距离 - 点与圆 | \( Abs(D - R) \) ,其中 \( D \) 是通过 LPoint::Distance 获得的点和圆心的距离, \( R \) 是圆的半径 |
最短距离 - 点与点 | LPoint::Distance |
最短距离 - 点与线 | LLine::Perpendicular |
最短距离 - 线与圆 | \( Max(0, D - R) \), 其中 \( D \) 是圆心到线的距离,通过 ILLine::Perpendicular 获得垂足,再通过 LPoint::Distance 获得距离, \( R \) 是圆的半径 |
最短距离 - 线与多边形 | LPoints::DistanceToLine, aggType = LPVAggregation::LPVAggMin |
最短距离 - 线与线 | 调用 ILLine::IntersectLine 若返回LPVIntersectType::LPVIntersectBounded,则最短距离为 0 ,否则,调用 LLine::Perpendicular 计算两个输入线段的4个端点到各自对应的另一个线段的距离,得到 4 个距离值中的最小值即为最短距离 |
最短距离 - 圆与圆 | \( Max(0, D - R_1 - R_2) \) ,其中 \( D \) 是通过 LPoint::Distance 获得的两个圆心的距离, \( R_1, R_2 \) 是两个圆的半径 |
最短距离 - 圆与多边形 | 调用 LPolygon::DistanceToPoint 获得多边形上离圆心最近的点 \( r \),构造圆心到该点的直线,再调用 LLine::IntersectCircle 获得这条线与圆的一个或两个交点,计算这两个交点到 \( r \) 的距离,通过 LPoint::Distance ,取其中较小的距离值作为最短距离 |
最短距离 - 多边形与多边形 | LPolygon::DistanceToPolygon, aggType = LPVAggregation::LPVAggMin |
最长距离 - 点与多边形 | LPolygon::DistanceToPoint, aggType = LPVAggregation::LPVAggMax |
最长距离 - 点与圆 | \( Abs(D + R) \) ,其中 \( D \) 是通过 LPoint::Distance 获得的点和圆心的距离, \( R \) 是圆的半径 |
最长距离 - 点与点 | LPoint::Distance |
最长距离 - 点与线 | LLine::Perpendicular |
最长距离 - 线与圆 | \( D + R \), 其中 \( D \) 是圆心到线的距离,通过 ILLine::Perpendicular 获得垂足,再通过 LPoint::Distance 获得距离, \( R \) 是圆的半径 |
最长距离 - 线与多边形 | LPoints::DistanceToLine, aggType = LPVAggregation::LPVAggMax |
最长距离 - 线与线 | 对于不相交的直线,计算直线端点到另外一条线的垂足距离,取最大值作为最长距离。垂足通过 LLine::Perpendicular 计算获得。相交判断通过 ILLine::IntersectLine 进行。 |
最长距离 - 圆与圆 | \( D + R_1 + R_2 \) ,其中 \( D \) 为通过 LPoint::Distance 计算获得的圆心距离, \( R_1, R_2 \) 为两个圆的半径 |
最长距离 - 圆与多边形 | 调用 LPolygon::DistanceToPoint 获得多边形上离圆心最远的点 \( r \),构造圆心到该点的直线,再调用 LLine::IntersectCircle 获得这条线与圆的一个或两个交点,计算这两个交点到 \( r \) 的距离,通过 LPoint::Distance ,取其中较大的距离值作为最长距离 |
最长距离 - 多边形与多边形 | LPolygon::DistanceToPolygon, aggType = LPVAggregation::LPVAggMax |
平行度 | LLine::Parallel |
同心率 | LCircle::Concentric |
共线性 | LPoint::Collinear |
多边形度量 - 与参考点的距离 | LPoints::DistancesToPoint |
多边形度量 - 与参考线的距离 | LPoints::DistancesToLine |
多边形度量 - 与参考多边形的距离 | LPoints::DistancesToPolygon |
多边形度量 - 点之间的距离 | LPoints::DistancesToPoints |
多边形度量 - 点之间的夹角 | – |
多边形度量 - 点的 x 坐标 | LPoints::GetPoints |
多边形度量 - 点的 y 坐标 | LPoints::GetPoints |