-
Notifications
You must be signed in to change notification settings - Fork 9.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Make visiond more HW portable - open source it all except DNN part #96
Comments
This is a duplicate issue, see #4 One issue is even if you ported it, performance of the network won't be good with other cameras. And you really wouldn't be able to bring costs down much, since you need an 820. Currently we have no plans to open source visiond. If I saw substantial pull requests and contributions to other parts of the code I'd be more open to it. |
You are killing the community by insisting on (rather) expensive and limited set of hardware. This is not the way community projects work, but I guess you know this and you do not need to grow probably. |
It won't work on (much) cheaper hardware. Show me a $100 phone with an 820 equivalent GPU, and we'll happily port it to that. We didn't choose the OnePlus 3 because we want people to have to spend needless money, it's the cheapest open 820 phone available. If you are talking about a PC port, the ACC portion will run on a PC without visiond. Show me that you have that working first. Then you can connect your own camera to a PC and use whatever DL library you'd like. |
I am not accusing you of pushing people to spend endless money and I dont have anything working but I am trying to say that a successful community project needs to have the barriers to entry as low as possible... Even though I do not have experience with DNN performance I do have some with classical computer vision algos - often they perform well on low resolution input images. I did some research with stereo vision and found that performance did not really scale with resolution (16x more pixels had only 4x less vision error). In other words one was able to downscale the image to speed things up without hurting the performance (in terms of errors) much. Maybe something similar could be done with DNNs. What input resolution do you use for your DNN? Have you tried to lower the resolution to speed things up and see how it performs (in terms of both speed and errors)? |
I was just at a symposium where similar topics were discussed. I did hear some experts saying that higher resolution tended to have diminishing returns with respect to neural nets, pattern recognition, etc. Also, if there were an interest in opening up more of the code, or just a general need for a port, I will offer my time to help. I would like to have this running to test on my car (which has LKAS, etc) but I do not want to spend $700 to do the testing up front. I might spend that much once I am convinced it will work though. |
Just out of curiosity, what would you spend? |
In order to differentiate, I would be willing to spend anywhere from $750-1000 for a fully working system that is guaranteed to work with my vehicle. IE: a production level device. For testing a system I am thinking around $150-$300. |
2253dd3 fix volt ign detect 3b299d7 add ignition and refactor af9af6d Merge pull request #110 from Jamezz/volt 13e850e more correct f295063 add new define to tests fec9758 gate that with debug 5516ebf one more ifdef cac7b31 only panda has float 938d474 fpu enable ffbf0c7 cleaner de30f27 Revert "need f to not be double" 4142acf need f to not be double 3eb15c8 refactor to share code a4c8b64 change to O2 to fix make recover 711fd11 Enable compiler optimizations, fix things it breaks 2e6f774 block IPAS in main toyota safety mode e7a2b3a add ipas tests 894572c fix tests 367c9ad add safety toyota ipas 95919b9 Bounty: panda high quality CAN autobaud (#96) 6557cd2 Toyota Safety: allow controls only on rising edge of cruise_engaged 02c1ddf Revert "added steer override check when IPAS is in control (#106)" 9f925ba Fix the merge mess 23d3833 Merge from comma upstream a0cc51a Undo safety mode override ea1c1dc make wlan interface name generic 6dbd8c9 Implement WebUSB and upgrade WinUSB to 2.0 (#107) 4fc83a5 Add safety hook for ignition and have GM use gear selector to determine ignition 52b2ac0 switch from travis to circleci 48e2374 build panda esp image 065572a circleci build stm image 7a1f319 add panda python package test and fix safety test 021dde7 move saftey test helper files into safety folder ce0545f add ci files 6a3307c no LIN over ELM 7d21acb added steer override check when IPAS is in control (#106) 1c88caf Safety code testing (#104) f4efd1f Merge pull request #101 from adhintz/master c02618b Merge pull request #102 from quillford/master 1ba5f8a added link to wiki for user scripts de2b19e add support for multiple buses to can_unique and can_bittransition output data in sorted order. git-subtree-dir: panda git-subtree-split: 2253dd3
Bump here. The visiond was open sourced lately. I created #562 for new discussion. |
* CAN auto-baud * Disable autobaud when exiting silent mode
* do not use * radar_interface logic improvements * remove radar logging * radar_interface refactoring * Update radar_interface.py * fixing push per Raf's comments
* Fix for mock car crash * fix ALCA module * do not use * radar_interface logic improvements * remove radar logging * radar_interface refactoring * Log radar_interface CAN error, Process Comm Errors (commaai#95) * Log radar_interface CAN error * Add support for process comm error logging * Improve Process Comm error logging * Can and CommError throttling * Update radar_interface.py * fixing push per Raf's comments * ALCA and radar_interface work (commaai#96) (commaai#97) * do not use * radar_interface logic improvements * remove radar logging * radar_interface refactoring * Update radar_interface.py * fixing push per Raf's comments * fix process comm issue * switch radard from lane_parser to model * radar/ALCA changes * fix lane width * switched back to not deleting CarParams to avoid radar failure when rebooting EON while driving * cleanup some debug info to be able to restart ALCA research * tweaks on safety_tesla.h for can bus isolation * few more cleanups to safety_tesla.h * fix start signal logic
* fix ALCA module * Update ALCA_module.py * Promote panda fixes from alpha to devel (commaai#98) * Fix for mock car crash * fix ALCA module * do not use * radar_interface logic improvements * remove radar logging * radar_interface refactoring * Log radar_interface CAN error, Process Comm Errors (commaai#95) * Log radar_interface CAN error * Add support for process comm error logging * Improve Process Comm error logging * Can and CommError throttling * Update radar_interface.py * fixing push per Raf's comments * ALCA and radar_interface work (commaai#96) (commaai#97) * do not use * radar_interface logic improvements * remove radar logging * radar_interface refactoring * Update radar_interface.py * fixing push per Raf's comments * fix process comm issue * switch radard from lane_parser to model * radar/ALCA changes * fix lane width * switched back to not deleting CarParams to avoid radar failure when rebooting EON while driving * cleanup some debug info to be able to restart ALCA research * tweaks on safety_tesla.h for can bus isolation * few more cleanups to safety_tesla.h * fix start signal logic * Increase LEXUS_IS safetyParam to 77 (commaai#841) * use list comprehension (commaai#839) * use list comprehension * oops index range fix * simplify encode/decode in dbc (commaai#840) * simplify encode/decode * 2019 Highlander Hybrid Limited Platinum (commaai#843) fingerprint from ogdragonzypher on Discord * Allow to lock safety mode to keep gm/tesla cars supported (commaai#844) * Force subaru to assume the stock camera is connected (commaai#849) * Revert to using the sum of the lane line probabilities instead of the the product * Add core OP support for CRC validation, with extra support for Volkswagen MQB (commaai#836) * Generalized core OP CRC support plus extra bits for Volkswagen MQB. * Update ref to process_replay regression test * Remove unneded use of replace, causing json to fail loading the alert * Add supported car for 2019 Toyota Altis Hybrid (commaai#859) * add supported car for 2019 Toyota Altis Hybird / Corolla hybrid 2020 (US market) * remove unnecessary comprehensions (commaai#863) * Added fingerprint from Sienna XLE AWD (commaai#848) * Added fingerprint from Sienna XLE AWD * Update driver_monitor.py * Update driver_monitor.py * Update driver_monitor.py * fix stupid merge issue * Adds 2019 Lexus ES (non hybrid) (commaai#866) * Adds 2019 Lexus ES (non hybrid) * Updated test route * merge issues * Update README with now supported Subaru Harness * Disable LDW for 4 seconds after blinker transition from on to off (commaai#112) If we want to change lanes with a blinker tap (3 blink mode), then we need to disable LDW for enough time to allow a smooth manual lane change. 4 seconds as it seems the freq is actually around 50Hz, not 100Hz. * Disable HSO for 3 seconds after blinker has been active (commaai#111) Avoid HSO will deactivate and try to take the car back into the lane during a manual lane change with blinker tapped (3 blinks mode) * params learner to only learn @ cons speed Acceleration/deceleration in turns affect yaw as measured by phone and will create potential issues with learner. This code changes the learner to only adjust parameters when speed is constant * Update to match new version of python in eons * python 3 fixes for test client / server * async/await server * Don't log for action message as it's too often, and we throttle it internally. * fix merge issue in thermald * fixes and tweaks; code simplification * Saving P,I,F parameters from pid controller (commaai#116) Added separate save/load functions, try catch - and saving the right constants to the params file. * Feature/tinklad throttling + linting (commaai#118) * Throttle tinlkad's attemptToSendPendingMessages * Remove get_git_remote from registration. It's defined in version already. * tinklad linting * tesla linting * Prevent multiple readings of the pid params file (commaai#119) ..only load the pid values when we initiate the LoC * missing V_PID_FILE constant (commaai#121) * show cars in IC for non-radar users (commaai#120) * bug fixes * Fix issue where user info was being dropped on no connectivity (commaai#122) * move pisParams, fix GPS logging * Bugfix tinklad throttling (commaai#124) * ALCA4 (still in dev) * ALCA4 tuning * ALCA4 alpha release * ALCA4 tweak for turns * ACC fix; LDW mite during ALCA * ALCA polishing * fix enter_canloader.py for python 3 * should_ldw changes moved the should_ldw code closer together and added status messages for when LDW is active and inactive * thermald and ALCA * ALCA sinplified logic
Hi there,
this thread is aimed primarily at comma.ai staff (@geohot etc. - others wecome to comment too though!). You guys want openpilot to be successful and have as many people as possible using it, right? I see a big obstacle here towards that path in the visiond binary being locked down a single high-end $700 smartphone model. Let's make the whole project more accessible by changing this. Seems like the project is still in experimental stage and you need loads of field testing to validate your code and to push it closer to production. You may be getting many more testers when the HW needed costs (just guessing) $100 instead of $700.
I see your business model in keeping your deep neural network closed source and I am perfectly fine with it. But would you want to open-source the most of visiond except your DNN blob so that you keep your intellectual property while allowing for a much wider variety of HW that can be used? Let's open source all visiond (the camera stuff etc.) except your DNN blob and also make that blob as portable as possible (I guess there are ways to making DNN portable?). You will have much better reach and could test performance on various HW and the project may gain more popularity like this. I know this may hurt by having to support various CPU/GPU architectures but I think the benefits may outweigh the drawbacks.
Hope you will be hearing to my post! :)
The text was updated successfully, but these errors were encountered: