<commit_before>__OpenCV computer vision with iOS: stitching panoramas__  

<img src = "https://github.com/foundry/OpenCVSwiftStitch/blob/meta/meta/example.big.jpg">

Version 2.0 of [OpenCVStitch](http://github.com/foundry/OpenCVStitch)

This project was created to a answer a couple of Stack Overflow questions:  
[libraries to CAPTURE panorama in iOS](http://stackoverflow.com/q/14062932/1375695)  
[Can I mix Swift with C++? Like the Objective - C .mm files](http://stackoverflow.com/q/24042774/1375695)    

v2 demonstrates how to mix Swift, Objective-C and C++ in one project whilst keeping the code clearly separate. 

The project AppDelegate and View Controller are written in Swift. Swift cannot talk directly to C++ (which we need for OpenCV), so we provide an Objective-C++ wrapper class to mediate between Swift and C++. We also provide an Objective-C++ category on UIImage to mediate between UIImage and CV::Mat image formats. The CVWrapper header file is pure Objective-C. For [v1](https://github.com/foundry/OpenCVStitch)(which doesn't use Swift) this separation was a matter of clean style. For v2, it is a requirement: if any C++ headers are included in the wrapper, the app will not compile (Swift won't like it).

__Intallation__  
To run the project you need to install the OpenCV framework:    
v3.0.0: available from [opencv.org](http://opencv.org)  
v2.4.9: installed via cocoaPods

v3.0.0: download the framework and drag it to your project. Include it in the _Link Binary With Libraries_ section of Build Phases for the target.  
v2.4.9: Assuming you have first [installed CocoaPods](https://guides.cocoapods.org/using/getting-started.html), run 'pod install' in this directory to install OpenCV for the project. From then on, always open the project in XCode from the `SwiftStitch.xcworkspace` file that the pod install creates. <commit_msg>Update README.markdown<commit_after>__OpenCV computer vision with iOS: stitching panoramas__  

<img src = "https://github.com/foundry/OpenCVSwiftStitch/blob/meta/meta/example.big.jpg">

Version 2.0 of [OpenCVStitch](http://github.com/foundry/OpenCVStitch)

This project was created to a answer a couple of Stack Overflow questions:  
[libraries to CAPTURE panorama in iOS](http://stackoverflow.com/q/14062932/1375695)  
[Can I mix Swift with C++? Like the Objective - C .mm files](http://stackoverflow.com/q/24042774/1375695)    

v2 demonstrates how to mix Swift, Objective-C and C++ in one project whilst keeping the code clearly separate. 

The project AppDelegate and View Controller are written in Swift. Swift cannot talk directly to C++ (which we need for OpenCV), so we provide an Objective-C++ wrapper class to mediate between Swift and C++. We also provide an Objective-C++ category on UIImage to mediate between UIImage and CV::Mat image formats. The CVWrapper header file is pure Objective-C. For [v1](https://github.com/foundry/OpenCVStitch)(which doesn't use Swift) this separation was a matter of clean style. For v2, it is a requirement: if any C++ headers are included in the wrapper, the app will not compile (Swift won't like it).

__Installation__  
To run the project you need to install the OpenCV framework:    
v3.0.0: available from [opencv.org](http://opencv.org)  
v2.4.9: installed via cocoaPods

v3.0.0: download the framework and drag it to your project. Include it in the _Link Binary With Libraries_ section of Build Phases for the target.  
v2.4.9: Assuming you have first [installed CocoaPods](https://guides.cocoapods.org/using/getting-started.html), run 'pod install' in this directory to install OpenCV for the project. From then on, always open the project in XCode from the `SwiftStitch.xcworkspace` file that the pod install creates. 
{'fraction_non_alphanumeric': 0.08262032085561498, 'fraction_numerical': 0.025133689839572194, 'mean_word_length': 4.461313868613138, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 5, 'https://': 6, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '7170970', 'n_tokens_mistral': 1170, 'n_tokens_neox': 1066, 'n_words': 481}