Created
March 25, 2014 20:42
Revisions
-
geoffreysmith revised this gist
Mar 25, 2014 . 1 changed file with 1 addition and 1 deletion.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -40,7 +40,7 @@ private Bitmap DetectFact(Image imageFromBitmap) var imageBitmap = new Bitmap(imageFromBitmap); var image = new Image<Bgr, byte>(imageBitmap); var gray = image.Convert<Gray, Byte>(); var face = new HaarCascade("haarcascade_frontalface_default.xml"); var facesDetected = gray.DetectHaarCascade(face, 1.1, 4, HAAR_DETECTION_TYPE.DO_CANNY_PRUNING, new Size(20, 20)); -
geoffreysmith created this gist
Mar 25, 2014 .There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,66 @@ public class MediaRequestOverride : MediaProvider { public override Media GetMedia(MediaUri mediaUri) { var mediaData = GetMediaData(mediaUri); var media = GetMedia(mediaData); return GetMediaFace(media); } public override Media GetMedia(MediaItem item) { var mediaData = GetMediaData(item); var media = GetMedia(mediaData); return GetMediaFace(media); } public Media GetMediaFace(Media media) { using (new SecurityDisabler()) { var stream = media.GetStream(); var resultingBitmap = DetectFact(Image.FromStream(stream.Stream)); if (resultingBitmap == null) return media; var memoryStream = new MemoryStream(); resultingBitmap.Save(memoryStream, System.Drawing.Imaging.ImageFormat.Jpeg); media.SetStream(memoryStream, "jpeg"); } return media; } private Bitmap DetectFact(Image imageFromBitmap) { var imageBitmap = new Bitmap(imageFromBitmap); var image = new Image<Bgr, byte>(imageBitmap); var gray = image.Convert<Gray, Byte>(); var face = new HaarCascade("C:\\_SITES\\ussoccer\\Website\\haarcascade_frontalface_default.xml"); var facesDetected = gray.DetectHaarCascade(face, 1.1, 4, HAAR_DETECTION_TYPE.DO_CANNY_PRUNING, new Size(20, 20)); Graphics g= null; foreach (var f in facesDetected[0]) { using (g = Graphics.FromImage(imageBitmap)) { g.DrawRectangle(new Pen(Color.Red, 5), f.rect); g.Save(); } break; } if (g != null) return imageBitmap; return null; } }