44 lines
1.3 KiB
C#
44 lines
1.3 KiB
C#
/*
|
|
* Copyright (c) 2025 LG Electronics Inc.
|
|
* SPDX-License-Identifier: LicenseRef-LGE-Proprietary
|
|
*/
|
|
using System;
|
|
|
|
namespace VisionCommon {
|
|
public class PreProcessingParam : ICloneCopy<PreProcessingParam> {
|
|
public FilteringParam FilParam { get; set; } = new FilteringParam();
|
|
public BinarizationParam BinParam { get; set; } = new BinarizationParam();
|
|
public MorphologyParam MorphParam { get; set; } = new MorphologyParam();
|
|
|
|
public bool Enabled() {
|
|
return FilteringEnabled() || BinaryEnabled();
|
|
}
|
|
public bool FilteringEnabled() {
|
|
return FilParam.Enabled;
|
|
}
|
|
|
|
public bool BinaryEnabled() {
|
|
return BinParam.Enabled;
|
|
}
|
|
|
|
public bool MorphEnabled() {
|
|
return BinParam.Enabled && MorphParam.Enabled;
|
|
}
|
|
|
|
public PreProcessingParam Clone() {
|
|
return ((ICloneable)this).Clone() as PreProcessingParam;
|
|
}
|
|
|
|
object ICloneable.Clone() {
|
|
var cloneObj = new PreProcessingParam();
|
|
CopyTo(cloneObj);
|
|
return cloneObj;
|
|
}
|
|
|
|
public void CopyTo(PreProcessingParam target) {
|
|
target.FilParam = this.FilParam.Clone();
|
|
target.BinParam = this.BinParam.Clone();
|
|
target.MorphParam = this.MorphParam.Clone();
|
|
}
|
|
}
|
|
} |