From 8fb254fc861b37f1702c340b584d922d371807b2 Mon Sep 17 00:00:00 2001 From: =?utf8?q?=EB=B0=95=EC=84=B8=ED=9D=AC/=EB=8F=99=EC=9E=91=EC=A0=9C?= =?utf8?q?=EC=96=B4Lab=28SR=29/Principal=20Engineer/=EC=82=BC=EC=84=B1?= =?utf8?q?=EC=A0=84=EC=9E=90?= Date: Mon, 2 Apr 2018 10:50:42 +0900 Subject: [PATCH] Add manual conv with excel (#356) This will add and simple 3x3 convolution in excel file. It uses excel built-in SUMPRODUCT() method. Signed-off-by: SaeHie Park --- docs/tests/Convolution_manual_3x3.xlsx | Bin 0 -> 16372 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 docs/tests/Convolution_manual_3x3.xlsx diff --git a/docs/tests/Convolution_manual_3x3.xlsx b/docs/tests/Convolution_manual_3x3.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..be6bcdee5dbdd9f097029fd6745c3cb3c46cb880 GIT binary patch literal 16372 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 CeDHh# literal 0 HcmV?d00001 -- 2.7.4