Template:CUDA ISP for NVIDIA Jetson/Main contents: Difference between revisions
Crodriguez (talk | contribs) No edit summary |
|||
(27 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
<br> | <br> | ||
{| style="border-style: solid; border-width: 1px; margin: 10px;" | {| style="border-style: solid; border-width: 1px; margin: 10px;" | ||
Line 19: | Line 18: | ||
|- | |- | ||
| width="100%" valign="top" colspan="2"| | | width="100%" valign="top" colspan="2"| | ||
{{NVIDIA Preferred Partner logo}} | |||
This wiki is a user guide for our '''CUDA ISP for NVIDIA Jetson''' project. <br> | This wiki is a user guide for our '''CUDA ISP for NVIDIA Jetson''' project. <br> | ||
Line 24: | Line 25: | ||
==What is CUDA ISP for NVIDIA Jetson?== | ==What is CUDA ISP for NVIDIA Jetson?== | ||
CUDA ISP is a RidgeRun library developed to provide an | CUDA ISP is a RidgeRun library developed to provide an out-of-the-box image processing algorithms, focusing on easiness and performance. Since our library's CUDA algorithms run on the GPU, it reduces CPU usage, thus freeing its processing capacity for others applications. This library can also work with computers that do not have a built-in ISP, by adding a discrete GPU to the computer architecture. It is intended for programs that require a large amount of CPU usage. It can also be used with GStreamer applications. | ||
The algorithms provided by the CUDA ISP are: | The algorithms provided by the CUDA ISP are: | ||
* Demosaic/Debayering | * Demosaic/Debayering | ||
* Auto white balance | * Auto white balance | ||
Line 42: | Line 44: | ||
== Use cases == | == Use cases == | ||
CUDA ISP provides an alternative solution to reduce CPU usage by allowing the GPU handle the image processing. | CUDA ISP provides an alternative solution to reduce CPU usage by allowing the GPU handle the image processing. | ||
* '''Application with large percentage of CPU usage''' | * '''Application with a large percentage of CPU usage''' | ||
If you ever found yourself overloading the CPU processing capacity, the GPU can handle it via CUDA ISP. | If you ever found yourself overloading the CPU processing capacity, the GPU can handle it via CUDA ISP. | ||
|- | |- | ||
| width="100%" valign="top" colspan="3"| | | width="100%" valign="top" colspan="3"| | ||
<br> | <br> | ||
<br><br> | <br><br> | ||
[[File: | [[File:CPUusageISPv2.png|500px|frameless|center|CUDA ISP library ]] | ||
<br> | <br> | ||
<br><br> | <br><br> | ||
* '''Computers with no ISP built-in''' | |||
Computers with x86 architecture do not have a built-in ISP. Adding a discrete GPU to the architecture allows CUDA ISP to be used as an alternative processor. | |||
* '''Artificial intelligence applications''' | |||
Developing artificial intelligence (AI) applications, such as computer vision, can require intensive computations in which the GPU can help with the processing. It is possible to find CUDA ISP working on a multi-GPU environment, where the ISP runs on a GPU and the AI applications on another one. | |||
*'''Streaming applications''' | |||
Streaming applications require lots of CPU processing as well. By letting the GPU handle it with CUDA ISP, the CPU will be freed for other processing tasks. | |||
I am on a Jetson. Why should I use CUDA ISP? | |||
* '''High-CPU usage''' | |||
If you want to free your CPU from the ISP computation, you can use CUDA ISP. | |||
* '''As NVIDIA ISP backup''' | |||
Depending on your processing, the NVIDIA ISP may consume CPU due to additional processing. You can use CUDA ISP as an alternative. | |||
* '''Flexibility''' | |||
CUDA ISP is flexible and extensible. You can add more algorithms to perform ISP tasks. We can team up in your next project to speed up the ISP. | |||
== Tested Platforms == | == Tested Platforms == | ||
{{ | Since CUDA ISP is a C++ library, it can be run on different platforms: | ||
* x86-64 (Linux) with discrete GPU added. | |||
** Intel-based systems | |||
** AMD-based systems | |||
* ARM 64-bit (Linux) | |||
** NVIDIA Jetson Nano | |||
** NVIDIA Jetson Xavier NX | |||
== CUDA ISP Purchase == | |||
<center> | |||
<table> | |||
<tr> | |||
<td> | |||
<html> | |||
<div id='product-component-1680122401703'></div> | |||
<script type="text/javascript"> | |||
/*<![CDATA[*/ | |||
(function () { | |||
var scriptURL = 'https://sdks.shopifycdn.com/buy-button/latest/buy-button-storefront.min.js'; | |||
if (window.ShopifyBuy) { | |||
if (window.ShopifyBuy.UI) { | |||
ShopifyBuyInit(); | |||
} else { | |||
loadScript(); | |||
} | |||
} else { | |||
loadScript(); | |||
} | |||
function loadScript() { | |||
var script = document.createElement('script'); | |||
script.async = true; | |||
script.src = scriptURL; | |||
(document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(script); | |||
script.onload = ShopifyBuyInit; | |||
} | |||
function ShopifyBuyInit() { | |||
var client = ShopifyBuy.buildClient({ | |||
domain: 'ridgerun1.myshopify.com', | |||
storefrontAccessToken: 'b0ca98633a82de5d2f63cd51f5af30ac', | |||
}); | |||
ShopifyBuy.UI.onReady(client).then(function (ui) { | |||
ui.createComponent('product', { | |||
id: '7814133776571', | |||
node: document.getElementById('product-component-1680122401703'), | |||
moneyFormat: '%24%7B%7Bamount%7D%7D', | |||
options: { | |||
"product": { | |||
"styles": { | |||
"product": { | |||
"@media (min-width: 601px)": { | |||
"max-width": "calc(25% - 20px)", | |||
"margin-left": "20px", | |||
"margin-bottom": "50px" | |||
} | |||
}, | |||
"button": { | |||
"font-family": "Open Sans, sans-serif", | |||
"font-weight": "bold", | |||
"font-size": "18px", | |||
"padding-top": "17px", | |||
"padding-bottom": "17px", | |||
":hover": { | |||
"background-color": "#0187a7" | |||
}, | |||
"background-color": "#0196ba", | |||
":focus": { | |||
"background-color": "#0187a7" | |||
}, | |||
"border-radius": "5px", | |||
"padding-left": "50px", | |||
"padding-right": "50px" | |||
}, | |||
"quantityInput": { | |||
"font-size": "18px", | |||
"padding-top": "17px", | |||
"padding-bottom": "17px" | |||
} | |||
}, | |||
"text": { | |||
"button": "Add to cart" | |||
}, | |||
"googleFonts": [ | |||
"Open Sans" | |||
] | |||
}, | |||
"productSet": { | |||
"styles": { | |||
"products": { | |||
"@media (min-width: 601px)": { | |||
"margin-left": "-20px" | |||
} | |||
} | |||
} | |||
}, | |||
"modalProduct": { | |||
"contents": { | |||
"img": false, | |||
"imgWithCarousel": true, | |||
"button": false, | |||
"buttonWithQuantity": true | |||
}, | |||
"styles": { | |||
"product": { | |||
"@media (min-width: 601px)": { | |||
"max-width": "100%", | |||
"margin-left": "0px", | |||
"margin-bottom": "0px" | |||
} | |||
}, | |||
"button": { | |||
"font-family": "Open Sans, sans-serif", | |||
"font-weight": "bold", | |||
"font-size": "18px", | |||
"padding-top": "17px", | |||
"padding-bottom": "17px", | |||
":hover": { | |||
"background-color": "#0187a7" | |||
}, | |||
"background-color": "#0196ba", | |||
":focus": { | |||
"background-color": "#0187a7" | |||
}, | |||
"border-radius": "5px", | |||
"padding-left": "50px", | |||
"padding-right": "50px" | |||
}, | |||
"quantityInput": { | |||
"font-size": "18px", | |||
"padding-top": "17px", | |||
"padding-bottom": "17px" | |||
} | |||
}, | |||
"googleFonts": [ | |||
"Open Sans" | |||
] | |||
}, | |||
"option": {}, | |||
"cart": { | |||
"styles": { | |||
"button": { | |||
"font-family": "Open Sans, sans-serif", | |||
"font-weight": "bold", | |||
"font-size": "18px", | |||
"padding-top": "17px", | |||
"padding-bottom": "17px", | |||
":hover": { | |||
"background-color": "#0187a7" | |||
}, | |||
"background-color": "#0196ba", | |||
":focus": { | |||
"background-color": "#0187a7" | |||
}, | |||
"border-radius": "5px" | |||
}, | |||
"title": { | |||
"color": "#4c4c4c" | |||
}, | |||
"header": { | |||
"color": "#4c4c4c" | |||
}, | |||
"lineItems": { | |||
"color": "#4c4c4c" | |||
}, | |||
"subtotalText": { | |||
"color": "#4c4c4c" | |||
}, | |||
"subtotal": { | |||
"color": "#4c4c4c" | |||
}, | |||
"notice": { | |||
"color": "#4c4c4c" | |||
}, | |||
"currency": { | |||
"color": "#4c4c4c" | |||
}, | |||
"close": { | |||
"color": "#4c4c4c", | |||
":hover": { | |||
"color": "#4c4c4c" | |||
} | |||
}, | |||
"empty": { | |||
"color": "#4c4c4c" | |||
}, | |||
"noteDescription": { | |||
"color": "#4c4c4c" | |||
}, | |||
"discountText": { | |||
"color": "#4c4c4c" | |||
}, | |||
"discountIcon": { | |||
"fill": "#4c4c4c" | |||
}, | |||
"discountAmount": { | |||
"color": "#4c4c4c" | |||
} | |||
}, | |||
"googleFonts": [ | |||
"Open Sans" | |||
] | |||
}, | |||
"toggle": { | |||
"styles": { | |||
"toggle": { | |||
"font-family": "Open Sans, sans-serif", | |||
"font-weight": "bold", | |||
"background-color": "#0196ba", | |||
":hover": { | |||
"background-color": "#0187a7" | |||
}, | |||
":focus": { | |||
"background-color": "#0187a7" | |||
} | |||
}, | |||
"count": { | |||
"font-size": "18px" | |||
} | |||
}, | |||
"googleFonts": [ | |||
"Open Sans" | |||
] | |||
}, | |||
"lineItem": { | |||
"styles": { | |||
"variantTitle": { | |||
"color": "#4c4c4c" | |||
}, | |||
"title": { | |||
"color": "#4c4c4c" | |||
}, | |||
"price": { | |||
"color": "#4c4c4c" | |||
}, | |||
"fullPrice": { | |||
"color": "#4c4c4c" | |||
}, | |||
"discount": { | |||
"color": "#4c4c4c" | |||
}, | |||
"discountIcon": { | |||
"fill": "#4c4c4c" | |||
}, | |||
"quantity": { | |||
"color": "#4c4c4c" | |||
}, | |||
"quantityIncrement": { | |||
"color": "#4c4c4c", | |||
"border-color": "#4c4c4c" | |||
}, | |||
"quantityDecrement": { | |||
"color": "#4c4c4c", | |||
"border-color": "#4c4c4c" | |||
}, | |||
"quantityInput": { | |||
"color": "#4c4c4c", | |||
"border-color": "#4c4c4c" | |||
} | |||
} | |||
} | |||
}, | |||
}); | |||
}); | |||
} | |||
})(); | |||
/*]]>*/ | |||
</script> | |||
</html> | |||
<td> | |||
{{spaces|75}}<div align="right">{{ContactUs Button}}</div> | |||
<td> | |||
</td> | |||
</tr></table> | |||
</center> | |||
<br> | <br> |
Latest revision as of 20:50, 29 March 2023
CUDA ISP for NVIDIA Jetson! CUDA ISP for NVIDIA Jetson Plugin from RidgeRun. |
| ||||||||||||||||
CUDA ISP for NVIDIA Jetson | |||||||||||||||||
This wiki is a user guide for our CUDA ISP for NVIDIA Jetson project. What is CUDA ISP for NVIDIA Jetson?CUDA ISP is a RidgeRun library developed to provide an out-of-the-box image processing algorithms, focusing on easiness and performance. Since our library's CUDA algorithms run on the GPU, it reduces CPU usage, thus freeing its processing capacity for others applications. This library can also work with computers that do not have a built-in ISP, by adding a discrete GPU to the computer architecture. It is intended for programs that require a large amount of CPU usage. It can also be used with GStreamer applications. The algorithms provided by the CUDA ISP are:
In the image below you can see the software stack of the library. | |||||||||||||||||
RidgeRun also makes a binary-only evaluation version available. Please refer to Contact Us to get an evaluation binary. Use casesCUDA ISP provides an alternative solution to reduce CPU usage by allowing the GPU handle the image processing.
If you ever found yourself overloading the CPU processing capacity, the GPU can handle it via CUDA ISP. | |||||||||||||||||
Computers with x86 architecture do not have a built-in ISP. Adding a discrete GPU to the architecture allows CUDA ISP to be used as an alternative processor.
Developing artificial intelligence (AI) applications, such as computer vision, can require intensive computations in which the GPU can help with the processing. It is possible to find CUDA ISP working on a multi-GPU environment, where the ISP runs on a GPU and the AI applications on another one.
Streaming applications require lots of CPU processing as well. By letting the GPU handle it with CUDA ISP, the CPU will be freed for other processing tasks. I am on a Jetson. Why should I use CUDA ISP?
If you want to free your CPU from the ISP computation, you can use CUDA ISP.
Depending on your processing, the NVIDIA ISP may consume CPU due to additional processing. You can use CUDA ISP as an alternative.
CUDA ISP is flexible and extensible. You can add more algorithms to perform ISP tasks. We can team up in your next project to speed up the ISP. Tested PlatformsSince CUDA ISP is a C++ library, it can be run on different platforms:
CUDA ISP Purchase
| |||||||||||||||||
RidgeRun Support | |||||||||||||||||
RidgeRun provides support for embedded Linux development for NVIDIA, Xilinx, Freescale/NXP, and Texas Instruments platforms, specializing in multimedia applications. This page contains detailed guides and information on how to get started with the CUDA ISP for NVIDIA Jetson and start using its full capabilities. To get up-to-speed with your CUDA ISP for NVIDIA Jetson, start by clicking below:
|