Commit Graph

2120 Commits

Author SHA1 Message Date
iabdalkader
2feed8b291 Add CNN example script. 2018-03-05 03:25:23 +02:00
iabdalkader
75d89f7172 Add CMSIS CNN. 2018-03-05 03:10:10 +02:00
iabdalkader
28cc88845c Fix system init. 2018-03-04 17:18:14 +02:00
iabdalkader
11040db094 Update imlib_image_mean to handle RGB images. 2018-03-04 03:29:11 +02:00
iabdalkader
789496e13a Fix OMV2 imlib_config.h 2018-03-04 01:31:06 +02:00
iabdalkader
c0efb0884a Revert c1e5daf6fd.
* FPU_USED is already defined.
2018-03-04 01:08:17 +02:00
iabdalkader
c1e5daf6fd Add FPU_USED to CFLAGS. 2018-03-04 01:07:19 +02:00
iabdalkader
1c91b1dcb1 Update SystemInit. 2018-03-04 01:06:31 +02:00
iabdalkader
bc3807ed30 Fix py_cpufreq. 2018-03-03 22:58:12 +02:00
iabdalkader
de1c6427a6 Wait for PWR_FLAG_VOSRDY 2018-03-02 17:38:35 +02:00
iabdalkader
659abe0225 Clean up system clockconfig function. 2018-03-02 17:37:03 +02:00
iabdalkader
e028215be5 Remove unused functions in system.c 2018-03-02 17:32:00 +02:00
Ibrahim Abd Elkader
9c3e9109ec
Merge pull request #318 from kwagyeman/mathop
Cleanup Math Operations
2018-02-26 18:35:55 +02:00
Kwabena W. Agyeman
397abe4746 Cleanup Math Operations
Add binary image support to the math operations and updated them to
support masks. Replace now also support mirroring operations. Finally,
adding missing basic math ops like add/sub/mul/div. The operations are
designed to work as image blending operations so they take care of
scaling their output accordingly.
2018-02-25 22:03:31 -05:00
Ibrahim Abd Elkader
4a0e1dda82
Merge pull request #317 from kwagyeman/master
Overhaul Binary Functions
2018-02-25 15:39:36 +02:00
Kwabena W. Agyeman
fb3d0776f0 Overhaul Binary Functions
Binary() can noew zero things so you can remove bright lights. All the
line ops (and/or/xor/etc) accept masks. Erode and dilate now accept
masks. And finally, you can now pass arguments versus keywords for folks
who don't read the documentation. Also, the binary image type is now
supported for these methods.

I'm putting in all this work because I saw the need for it when I was
doing shadow removal.

Note: Some effort needs to be put into optimizing the py_image.c code
soon. This is on the todo list before the next release.
2018-02-25 00:15:02 -05:00
Ibrahim Abd Elkader
b8298c43cd
Merge pull request #316 from kwagyeman/master
Add color thresholding support to get_histogram/stats.
2018-02-23 03:54:33 +02:00
Kwabena W. Agyeman
646425b2a6 Add color thresholding support to get_histogram/stats.
You can now pass a color threshold list to get histogram and get stats
(along with an invert arg) to control what gets put into the histogram.
2018-02-21 01:27:13 -05:00
iabdalkader
5d3ebda192 Remove board design files (moved to openmv-boards). 2018-02-18 01:17:05 +02:00
Ibrahim Abd Elkader
b304801620
Merge pull request #314 from kwagyeman/motor_shield
Add motor shield files.
2018-02-18 00:38:33 +02:00
Kwabena W. Agyeman
7b551f6f56 Add motor shield files 2018-02-17 14:32:16 -08:00
iabdalkader
5027e0162e Protect VCP buffer pointer with atomic section.
* Fix issue #313
2018-02-17 00:22:21 +02:00
iabdalkader
9b8519c6f1 Update firmware. 2018-02-15 23:48:39 +02:00
iabdalkader
7c6ee56862 Move wifi driver to separate files.
* This will enable using wifi from C code.
2018-02-12 23:53:43 +02:00
iabdalkader
eaaf391ec8 Enable threading. 2018-02-12 23:53:00 +02:00
Ibrahim Abd Elkader
43a17f2890
Merge pull request #312 from kwagyeman/wifi_dbg
Add wifi_dbg stub.
2018-02-12 22:21:42 +02:00
iabdalkader
ff75b760f7 Update MP docs. 2018-02-12 00:41:26 +02:00
Kwabena W. Agyeman
11983a0228 Add wifi_dbg stub.
All the notes about how to implement wifi programming are in the code.
Steps:

1. Get wifi_apply_settings() working first and make sure you can turn
the wifi shield on in the right mode. Then add the necessary hooks into
the network code to make it such that previous user wifi code still
works. Also, make sure to handle start and shutdown gracefully.

Basically, get all the lifecycle code working first before moving to the
next step so notning gets in a weird state and bugs creep in...

2. Get the beacon method working. Once this works OpenMV IDE should see
the camera when you hit the connect button.

3. Do the code to turn off the regular usbdbg interface and swtich to
having the data come from wifi_dbg. This isn't a lot of code... but,
will be tricky since you no longer will have USB frames to work with.
All bytes are just going to come randomly and in bursts so you have to
handle the serial stream yourself... (Kwabena can help writing a
statemachine for dealing with this type of stuff if you want. I do it
all the time).
2018-02-08 01:49:29 -05:00
iabdalkader
7ef6bf0e5c Disable unused functions in imlib_config. 2018-02-06 02:26:09 +02:00
iabdalkader
333e5417b1 Disable qrcodes if not used. 2018-02-06 02:17:46 +02:00
iabdalkader
291b06db13 Disable find_rects if not used. 2018-02-06 02:17:01 +02:00
iabdalkader
45dd265d51 Update imlib config. 2018-02-06 02:11:11 +02:00
iabdalkader
9a2bf08c50 Move line functions to line.c 2018-02-06 02:07:36 +02:00
iabdalkader
3010a47930 Disable imlib similarity if not used. 2018-02-05 02:17:48 +02:00
iabdalkader
6d396b809a Enable auto dependency generation. 2018-02-04 18:31:39 +02:00
iabdalkader
2f6c18d286 Update imlib config files. 2018-02-04 16:19:21 +02:00
iabdalkader
581e1ab2d2 Disable rotation correction if not used. 2018-02-04 16:14:04 +02:00
iabdalkader
1935c34f4f Disable phase corr if not used. 2018-02-04 16:08:20 +02:00
iabdalkader
7cb0133bc9 Disable logpolar if not used 2018-02-04 16:01:39 +02:00
iabdalkader
ba2539f09e Add imlib macros to shadow removal. 2018-02-02 16:44:41 +02:00
iabdalkader
45dba499ad Add missing imlib macro. 2018-02-02 16:41:24 +02:00
iabdalkader
c8741f5cc1 Rename OMV_ENABLE to IMLIB_ENABLE. 2018-02-02 01:35:13 +02:00
iabdalkader
5e47520a48 Add imlib config file. 2018-02-02 01:26:21 +02:00
Ibrahim Abd Elkader
b98b24eb9d
Merge pull request #311 from kwagyeman/shadows
Add single image shadow remover code.
2018-01-29 18:03:25 +02:00
Kwabena W. Agyeman
5377f6f575 Add single image shadow remover code.
Calling remove_shadows() on an image without a background source of
truth image now works. However, that said, the shadow remover isn't
suitable for anything other than removing shadow on an image of concrete
flow or somthing of the like. In general, it can only remove shadows
from a scene that has nothing else in it except for a hard edge shadow.

Improving this to work for anything is about a month of work. I've
researched enough about shadow removal to now know the optimal way to do
it. However, it requires many steps and a large amount of RAM. On the H7
I may revist this as being possible.

...

In order to get the shadow remover working well I had to add a few
features to the image library and fix some of the convolution code.
These fixes will likely be more useful than the shadow removal code.

Note the addition of the new get_threshold() method. This computes
otsu's threshold on a histogram allowing you to pick the optimal color
bounds.
2018-01-28 19:33:04 -05:00
Ibrahim Abd Elkader
9cf6564e28
Merge pull request #310 from Xbaal/Xbaal-patch-1
typo correction
2018-01-25 14:24:17 +02:00
Konrad Becker
4f606a15c0
type correction 2018-01-25 13:15:40 +01:00
iabdalkader
f608150b02 Bump firmware version. 2018-01-24 15:05:04 +02:00
iabdalkader
4183f13687 Update change log. 2018-01-24 15:02:10 +02:00
iabdalkader
897dee5de2 Update firmware images. 2018-01-24 14:57:12 +02:00