Skip to content

Instantly share code, notes, and snippets.

let requestHandler = VNImageRequestHandler(url: inputImageURL)
let request = VNDetectRectanglesRequest { request, error in
self.completedVisionRequest(request, error: error)
}
// perform additional request configuration
request.usesCPUOnly = false //allow Vision to utilize the GPU
DispatchQueue.global().async {
do {
let pixelBuffer = sceneView?.session.currentFrame?.capturedImage
let handler = VNImageRequestHandler(cvPixelBuffer: pixelBuffer, orientation: .up)
let request = VNDetectRectanglesRequest { request, error in
self.completedVisionRequest(request, error: error)
}
func completedVisionRequest(_ request: VNRequest?, error: Error?) {
// Only proceed if a rectangular image was detected.
guard let rectangles = request?.results as? [VNRectangleObservation] else {
guard let error = error else { return }
print("Error: Rectangle detection failed - Vision request returned an error. \(error.localizedDescription)")
return
}
// do stuff with your rectangles
for rectangle in rectangles {
print(rectangle.boundingBox)
Name Type Range Default
.maximumObservations Int [0...] 1
.minimumAspectRatio Float [0.0...1.0] 0.5
.maximumAspectRatio Float [0.0...1.0] 0.5
.minimumSize Float [0.0...1.0] 0.2
.quadratureTolerance Float [0.0...45.0] 30.0
.minimumConfidence Float [0.0...1.0] 0.0
@jbadger3
jbadger3 / UIKit_keyboard_dismiss.swift
Last active November 10, 2020 19:35
iOS manual keyboard dismissal
class ViewController: UIViewController {
@IBOutlet weak var textField: UITextField!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
let tapGesture = UITapGestureRecognizer(target: self, action: #selector(dismissKeyboard))
self.view.addGestureRecognizer(tapGesture)
}
@jbadger3
jbadger3 / SwiftUI_keyboard_dismiss_formview_fix1.swift
Created November 10, 2020 19:39
iOS manual keyboard dismissal
struct FormViewFix1: View {
@State var name = ""
@State var yearsExpereince: Int = 0
var body: some View {
NavigationView {
Form {
Section(header: Text("Applicant Info"), content: {
HStack {
Text("Name:")
@jbadger3
jbadger3 / SwiftUI_keyboard_dismiss_view_extension.swift
Created November 12, 2020 17:13
iOS manual keyboard dismissal
#if canImport(UIKit)
extension View {
func hideKeyboard() {
UIApplication.shared.sendAction(#selector(UIResponder.resignFirstResponder), to: nil, from: nil, for: nil)
}
}
#endif
@jbadger3
jbadger3 / SwiftUI_keyboard_dismiss_submit_button_example.swift
Last active November 12, 2020 17:15
iOS manual keyboard dismissal
struct ContentView: View {
@State private var tipAmount = ""
var body: some View {
VStack {
TextField("Name: ", text: $tipAmount)
.textFieldStyle(RoundedBorderTextFieldStyle())
.keyboardType(.decimalPad)
Button("Submit") {
@jbadger3
jbadger3 / SwiftUI_keyboard_dismiss_tap_on_vstack.swift
Created November 12, 2020 17:17
iOS manual keyboard dismissal
...
VStack {
TextView("", $myText)
}
.onTapGesture {
self.dismissKeyboard()
}
...