[ Web Proxy ]
URL:
Viewing: https://raw.githubusercontent.com/codeplaysoftware/visioncpp/master/examples/edge_detector.cpp [Back]  [Original]

// This file is part of VisionCPP, a lightweight C++ template library
// for computer vision and image processing.
//
// Copyright (C) 2016 Codeplay Software Limited. All Rights Reserved.
//
// Contact: visioncpp@codeplay.com
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

/// \file edge_detector.cc
///
///             -------Example--------
///           Edge detector based on Sobel
///
/// \brief This example implements an edge detection based on Sobel mask
///

// include OpenCV for camera display
#include 

// include VisionCpp
#include 

// functor that calculates the magnitude of each pixel based on Sobel
struct OP_Magnitude {
  template 
  float operator()(const T1& t1, const T2& t2) {
    return cl::sycl::clamp(cl::sycl::sqrt(t1 * t1 + t2 * t2), 0.0f, 1.0f);
  }
};

// main program
int main(int argc, char** argv) {
  // open video or camera
  cv::VideoCapture cap;

  if (argc == 1) {
    cap.open(0);
    std::cout 

Web Proxy Viewer  |  New URL  |  Original Page