3.0 KiB
3.0 KiB
This is the documentation for the macOS OpenCV framework.
Quick Start Tutorial
Follow the steps below to get a simple "Hello World" app running on macOS
- Open Xcode and create a new project from the File > New > Project... menu
- From the template selection dialog select the macOS tab and then select App
- Enter a name for the project and set Interface to Storyboard and Language to Swift
- Choose a location to save the project
- Create a new folder
Framework
- In a Finder window copy the framework file to the newly created folder. The framework should appear in the project navigator as below. (Note: in this case the framework has extension
.frameworkbut depending on how you built it or from where you obtained it your framework may have extension.xcframework)
- Select the project root in the project navigator and on the General tab locate the Frameworks, Libraries and Embedded Content section
- In the Choose frameworks and libraries to add dialog add the following
- OpenCL.framework
- liblapack.tbd
- libblas.tbd
- The Frameworks, Libraries and Embedded Content section should now look like this
- In the project navigator select the
ViewController.swiftfile
- Add an
importfor the OpenCV framework below the existing import forCocoa
import opencv2
- Replace the implementation of the
viewDidLoadfunction with the following code
override func viewDidLoad() {
super.viewDidLoad()
let white = Scalar(255, 255, 255, 255)
let black = Scalar(0, 0, 0, 255)
let m = Mat(rows: 400, cols: Int32(view.frame.width), type: CvType.CV_8UC4, scalar: white)
Imgproc.putText(img: m, text: "Hello World", org: Point(x: 10, y: 250), fontFace: HersheyFonts.FONT_HERSHEY_DUPLEX, fontScale: 2, color: black)
let image = m.toNSImage()
let imageView = NSImageView(frame: NSRect(x: 0, y: 0, width: Int(m.cols()), height: Int(m.rows())))
imageView.image = image
self.view.addSubview(imageView)
}
- The
ViewController.swiftfile should now look like this
- Launch the app
- The app home screen should look like this
If that has all worked well then congratulations. If not then feel free to reach out to the OpenCV community for help. Also feel free to contribute fixes and improvements.












