|
|
|
@ -179,22 +179,22 @@ namespace OpenCV |
|
|
|
|
|
|
|
|
|
public IplImage HSVRed(IplImage src) |
|
|
|
|
{ |
|
|
|
|
hsv = new IplImage(src.Size, BitDepth.U8, 3); |
|
|
|
|
hsvRed = new IplImage(src.Size, BitDepth.U8, 3); |
|
|
|
|
|
|
|
|
|
IplImage lowerRed = new IplImage(src.Size, BitDepth.U8, 1); |
|
|
|
|
IplImage upperRed = new IplImage(src.Size, BitDepth.U8, 1); |
|
|
|
|
IplImage red = new IplImage(src.Size, BitDepth.U8, 1); |
|
|
|
|
|
|
|
|
|
Cv.CvtColor(src, hsv, ColorConversion.BgrToHsv); |
|
|
|
|
Cv.CvtColor(src, hsvRed, ColorConversion.BgrToHsv); |
|
|
|
|
|
|
|
|
|
Cv.InRangeS(hsv, new CvScalar(0, 100, 100), new CvScalar(10, 255, 255), lowerRed); |
|
|
|
|
Cv.InRangeS(hsv, new CvScalar(170, 100, 100), new CvScalar(179, 255, 255), upperRed); |
|
|
|
|
Cv.InRangeS(hsvRed, new CvScalar(0, 100, 100), new CvScalar(10, 255, 255), lowerRed); |
|
|
|
|
Cv.InRangeS(hsvRed, new CvScalar(170, 100, 100), new CvScalar(179, 255, 255), upperRed); |
|
|
|
|
Cv.AddWeighted(lowerRed, 1.0, upperRed, 1.0, 0.0, red); |
|
|
|
|
|
|
|
|
|
hsv.SetZero(); |
|
|
|
|
Cv.Copy(src, hsv, red); |
|
|
|
|
hsvRed.SetZero(); |
|
|
|
|
Cv.Copy(src, hsvRed, red); |
|
|
|
|
|
|
|
|
|
return hsv; |
|
|
|
|
return hsvRed; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
private void Release(params IplImage[] images) |
|
|
|
|