You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+23-47Lines changed: 23 additions & 47 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -43,26 +43,19 @@ SymForce is developed and maintained by [Skydio](https://skydio.com/). It is use
43
43
+ Embedded-friendly C++ generation of templated Eigen code with zero dynamic memory allocation
44
44
+ Highly performant, modular, tested, and extensible code
45
45
46
+
### Read the paper: https://arxiv.org/abs/2204.07889
46
47
47
-
### Read the paper: [arXiv:2204.07889](https://arxiv.org/abs/2204.07889)
48
+
SymForce was published to [RSS 2022](https://roboticsconference.org/). Please cite it as follows:
48
49
49
-
# Early Access Notes
50
-
51
-
Thank you for helping us develop SymForce! We value the time you're taking to provide feedback during this private beta program. We expect some rough edges and slow, missing, or confusing aspects of the library. Please file [issues](https://github.com/symforce-org/symforce/issues) on GitHub and we will work to address them.
52
-
53
-
Things to try:
54
-
55
-
* Review our tutorials and documentation
56
-
* Create symbolic expressions in a notebook
57
-
* Use the symbolic geometry and camera modules
58
-
* Compute tangent-space jacobians using `symforce/jacobian_helpers.py`
59
-
* Use the Python Factor and Optimizer to solve a problem
60
-
* Generate runtime C++ code with the Codegen class
61
-
* Use the generated C++ geometry module
62
-
* Use the C++ Factor and Optimizer to solve a problem
63
-
* Read and understand the SymForce codebase
64
-
65
-
[**Read the docs!**](https://symforce.org)
50
+
```
51
+
@inproceedings{Martiros-RSS-22,
52
+
author = {Hayk Martiros AND Aaron Miller AND Nathan Bucki AND Bradley Solliday AND Ryan Kennedy AND Jack Zhu AND Tung Dang AND Dominic Pattison AND Harrison Zheng AND Teo Tomic AND Peter Henry AND Gareth Cross AND Josiah VanderMey AND Alvin Sun AND Samuel Wang AND Kristen Holtz},
53
+
title = {{SymForce: Symbolic Computation and Code Generation for Robotics}},
54
+
booktitle = {Proceedings of Robotics: Science and Systems},
SymForce can also generate runtime Python code that depends only on `numpy`.
507
500
508
-
The code generation system is written with pluggable [`jinja`](https://palletsprojects.com/p/jinja/) templates to minimize the work to add new backend languages. Some of our top candidates to add are TypeScript, CUDA, and PyTorch.
501
+
The code generation system is written with pluggable [jinja](https://palletsprojects.com/p/jinja/) templates to minimize the work to add new backend languages. Some of our top candidates to add are TypeScript, CUDA, and PyTorch.
509
502
510
503
## Optimize from C++
511
504
@@ -579,36 +572,17 @@ However, each piece may also be used independently. The optimization machinery c
579
572
}
580
573
$ -->
581
574
582
-
# Learn More
583
-
584
-
You can find more SymForce tutorials [here](https://symforce.org/#guides).
585
-
586
-
# Citing SymForce
587
-
588
-
To cite SymForce in a publication use
589
-
590
-
```
591
-
@inproceedings{SymForce-RSS-2022,
592
-
author = {Hayk Martiros and Aaron Miller and Nathan Bucki and Bradley Solliday
593
-
and Ryan Kennedy and Jack Zhu and Tung Dang and Dominic Pattison
594
-
and Harrison Zheng and Teo Tomic and Peter Henry and Josiah VanderMey
595
-
and Gareth Cross and Alvin Sun and Samuel Wang and Kristen Holtz},
596
-
title = {SymForce: Symbolic Computation and Code Generation for Robotics},
597
-
url = {https://github.com/symforce-org/symforce},
598
-
booktitle = {Proceedings of Robotics: Science and Systems},
599
-
year = {2022}
600
-
}
601
-
```
575
+
To learn more, visit the SymForce tutorials [here](https://symforce.org/#guides).
602
576
603
577
# License
604
578
605
579
SymForce is released under the [Apache 2.0](https://spdx.org/licenses/Apache-2.0.html) license.
606
580
607
-
See the LICENSE file for more information.
581
+
See the [LICENSE](https://github.com/symforce-org/symforce/blob/main/LICENSE) file for more information.
608
582
609
583
# Sponsors
610
584
611
-
SymForce is developed and maintained by [Skydio](https://skydio.com/). It is released as a free and open-source library for the robotics community. Contributors to the project are welcome!
585
+
SymForce is developed and maintained by [Skydio](https://skydio.com/). It is released as a free and open-source library for the robotics community.
While SymForce already powers tens of thousands of robots at Skydio, the public library is new and we are releasing it in beta stage. This is just the beginning, and we are excited for engagement from the community. Thank you for helping us develop SymForce! The best way to get started is to file [issues](https://github.com/symforce-org/symforce/issues) for bugs or desired features.
621
597
622
-
There are several features we'd like to add, or would be happy to see added by contributors from the
623
-
community. Some of these are outlined in
624
-
[the current Issues](https://github.com/symforce-org/symforce/issues), but some other major possible
625
-
additions are:
598
+
There are many features we're excited to add to SymForce and would love to see contributed by the community. Most are outlined in the issues, but some major desired contributions are:
626
599
600
+
- Add more backend languages, such as TypeScript, CUDA, GLSL/HLSL, and PyTorch
627
601
- Easily swap in approximate or architecture-specific implementations of primitive
628
602
functions, such as trig functions
629
-
- Add more backend languages, such as CUDA, GLSL/HLSL, and TypeScript
603
+
-Support for WebAssembly compilation
630
604
- More Lie group types, in particular Sim(3)
605
+
- Support for constraints in our optimizer
606
+
- Integration with [ISPC](https://ispc.github.io/)
0 commit comments