<commit_before># ogles_gpgpu - GPGPU for mobile devices and embedded systems using OpenGL ES 2.0

## Features

* fast and portable C++ code
* platform optimizations for fast texture access
 * on iOS: [Core Video Texture Cache API](http://allmybrain.com/2011/12/08/rendering-to-a-texture-with-ios-5-texture-cache-api/)
 * on Android: EGL pixelbuffers and [KHRImage extensions](http://snorp.net/2011/12/16/android-direct-texture.html)
* well documented
* contains several example applications
* LGPL licensed

## Tested platforms

* iOS 7.1
* Android 5.0

## Tested devices

* Apple iPad 2
* Apple iPad 4
* Apple iPhone 4s
* XCode Simulator
* Google Nexus 10 (2013)

## Example projects

### iOS examples

These examples should run out-of-the-box.

* OGLESGPGPUStillImage - *Simple project that performs GPU-powered adaptive thresholding on different images*
* OGLESGPGPUVideoCam - *Project that shows real-time GPU-powered image processing on video camera frames*

### Android examples

These projects were created with the Eclipse ADT and use the Android NDK.

To compile, you need to install the [Android NDK](https://developer.android.com/tools/sdk/ndk/index.html) first. Then, do the following: Right click on the project in Eclipse, select *Properties > C/C++ Build > Environment*. Edit the variable *NDK_PATH* to point to your NDK root directory.

* OGStillImageDroid - *Simple project that performs GPU-powered adaptive thresholding on different images*

## TODO

### Milestone 2

* android: camera example
* test ipad3 / ios 8

### Milestone 3

* rasp pi port

### Milestone 4

* comparisons with openCV
* AR support (include into ocv_ar)

### Milestone 5

* more dynamic filters (-> shader code generator)
* create own multipass filter (multiple gauss filters?)

### Milestone 6

* native iOS YUV input support

## License

This project is licensed under [GNU LGPL v2.1](http://choosealicense.com/licenses/lgpl-2.1/). See `LICENSE` file for the full text.
<commit_msg>added known issue to readme<commit_after># ogles_gpgpu - GPGPU for mobile devices and embedded systems using OpenGL ES 2.0

## Features

* fast and portable C++ code
* platform optimizations for fast texture access
 * on iOS: [Core Video Texture Cache API](http://allmybrain.com/2011/12/08/rendering-to-a-texture-with-ios-5-texture-cache-api/)
 * on Android: EGL pixelbuffers and [KHRImage extensions](http://snorp.net/2011/12/16/android-direct-texture.html)
* well documented
* contains several example applications
* LGPL licensed

## Tested platforms

* iOS 7.1
* Android 5.0

## Tested devices

* Apple iPad 2
* Apple iPad 4
* Apple iPhone 4s
* XCode Simulator
* Google Nexus 10 (2013)

## Example projects

### iOS examples

These examples should run out-of-the-box.

* OGLESGPGPUStillImage - *Simple project that performs GPU-powered adaptive thresholding on different images*
* OGLESGPGPUVideoCam - *Project that shows real-time GPU-powered image processing on video camera frames*

### Android examples

These projects were created with the Eclipse ADT and use the Android NDK.

To compile, you need to install the [Android NDK](https://developer.android.com/tools/sdk/ndk/index.html) first. Then, do the following: Right click on the project in Eclipse, select *Properties > C/C++ Build > Environment*. Edit the variable *NDK_PATH* to point to your NDK root directory.

* OGStillImageDroid - *Simple project that performs GPU-powered adaptive thresholding on different images*

## Known Issues

1. When using platform optimizations on Android (which enables using the ImageKHR extension), the first processing run will not produce any output (the buffer will only contain zeros). However, any successive runs will work normally.

## TODO

### Milestone 2

* android: camera example
* test ipad3 / ios 8

### Milestone 3

* rasp pi port

### Milestone 4

* comparisons with openCV
* AR support (include into ocv_ar)

### Milestone 5

* more dynamic filters (-> shader code generator)
* create own multipass filter (multiple gauss filters?)

### Milestone 6

* native iOS YUV input support

## License

This project is licensed under [GNU LGPL v2.1](http://choosealicense.com/licenses/lgpl-2.1/). See `LICENSE` file for the full text.

{'fraction_non_alphanumeric': 0.0908013276434329, 'fraction_numerical': 0.020625889046941678, 'mean_word_length': 4.327020202020202, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 9, 'https://': 2, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '691651', 'n_tokens_mistral': 1304, 'n_tokens_neox': 1213, 'n_words': 497}