From 6553b3f0e3e55fc30a99c7d4b5798aa86d18a114 Mon Sep 17 00:00:00 2001
From: Joseph Redmon <pjreddie@gmail.com>
Date: Mon, 30 Mar 2015 02:31:47 +0000
Subject: [PATCH] no comment

---
 src/image.c |   24 ++++++++++++++++++++++++
 1 files changed, 24 insertions(+), 0 deletions(-)

diff --git a/src/image.c b/src/image.c
index 174b24c..2cfce63 100644
--- a/src/image.c
+++ b/src/image.c
@@ -395,6 +395,26 @@
     return out;
 }
 
+image crop_image(image im, int dr, int dc, int h, int w)
+{
+    image cropped = make_image(h, w, im.c);
+    int i, j, k;
+    for(k = 0; k < im.c; ++k){
+        for(j = 0; j < h; ++j){
+            for(i = 0; i < w; ++i){
+                int r = j + dr;
+                int c = i + dc;
+                float val = 128;
+                if (r >= 0 && r < im.h && c >= 0 && c < im.w) {
+                    val = get_pixel(im, r, c, k);
+                }
+                set_pixel(cropped, j, i, k, val);
+            }
+        }
+    }
+    return cropped;
+}
+
 // #wikipedia
 image resize_image(image im, int h, int w)
 {
@@ -427,9 +447,13 @@
     image im = load_image(filename, 0,0);
     image small = resize_image(im, 63, 65);
     image big = resize_image(im, 512, 513);
+    image crop = crop_image(im, 10, 50, 100, 100);
+    image crop2 = crop_image(im, -50, -30, 400, 291);
     show_image(im, "original");
     show_image(small, "smaller");
     show_image(big, "bigger");
+    show_image(crop, "crop");
+    show_image(crop2, "crop2");
     cvWaitKey(0);
 }
 

--
Gitblit v1.10.0