I read so many postings that Arduino Due cannot interface with USB web cam over USB port.
Just stumbled over this 8(!) part article series describing how to do it (this is part 8 ):
Yes, its not done with Arduino IDE, but I find it remarkable that its possible at all.
Here is nice short youtube video showing the author of the series in 176x144 frame on LCD:
Yes, it should be easier to use an OV7670 camera, or to connect Due with 8$ NanoPi Neo with 2$ webcam (I have streaming 640x480 webcam from NanoPi Neo to Ubuntu laptop with gst-launch-0.10 on both ends [udpsink/udpsrc] working already, youtube video). But this guy has implemented all the layers needed to access USB webcam over Due native USB port ...
Perhaps here is a good place to mention another more powerful option.
In thread Raspberry Pi Zero as horse power coprocessor for Due? I mentioned to use (5$, 1GHz single core) Raspberry Pi Zero as well as (8$, 1.2GHz A7 quad core) NanoPi Neo as coprocessors for Arduino. I added a 2$ USB webcam to the 8$ NanoPi Neo and got a really performant video subsystem that happily stream 640x480 VGA video with 30 frames/second to an Ubuntu laptop, see this youtube video:
So for 10$ you get a subsytem that can easily send more data to Arduino Due than it can deal with, and gstreamer pipeline allows the NanoPi Neo to do image processing and other stuff for sending only the data to Arduino Due that it needs.
NanoPi Neo does not need ethernet, can be used via UART through "minicom", or directly from Arduino. You can even order one with 512MB (instead 256MB), and get it flat without RJ45 and USB if you need it for 1.99$ more (over GPIO pin UART then):