Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
Tetragramm
GitHub Repository: Tetragramm/opencv
Path: blob/master/modules/dnn/src/vkcom/include/vkcom.hpp
16344 views
1
// This file is part of OpenCV project.
2
// It is subject to the license terms in the LICENSE file found in the top-level directory
3
// of this distribution and at http://opencv.org/license.html.
4
//
5
// Copyright (C) 2018, Intel Corporation, all rights reserved.
6
// Third party copyrights are property of their respective owners.
7
8
#ifndef OPENCV_DNN_VKCOM_HPP
9
#define OPENCV_DNN_VKCOM_HPP
10
11
#include <vector>
12
13
namespace cv { namespace dnn { namespace vkcom {
14
15
#ifdef HAVE_VULKAN
16
17
enum Format{
18
kFormatInvalid = -1,
19
kFormatFp16,
20
kFormatFp32,
21
kFormatFp64,
22
kFormatInt32,
23
kFormatNum
24
};
25
26
enum OpType {
27
kOpTypeConv,
28
kOpTypePool,
29
kOpTypeDWConv,
30
kOpTypeLRN,
31
kOpTypeConcat,
32
kOpTypeSoftmax,
33
kOpTypeReLU,
34
kOpTypePriorBox,
35
kOpTypePermute,
36
kOpTypeNum
37
};
38
enum PaddingMode { kPaddingModeSame, kPaddingModeValid, kPaddingModeCaffe, kPaddingModeNum };
39
enum FusedActivationType { kNone, kRelu, kRelu1, kRelu6, kActivationNum };
40
typedef std::vector<int> Shape;
41
42
/* context APIs */
43
bool initPerThread();
44
void deinitPerThread();
45
bool isAvailable();
46
47
#endif // HAVE_VULKAN
48
49
}}} // namespace cv::dnn::vkcom
50
51
#include "tensor.hpp"
52
#include "buffer.hpp"
53
#include "op_base.hpp"
54
#include "op_concat.hpp"
55
#include "op_conv.hpp"
56
#include "op_lrn.hpp"
57
#include "op_softmax.hpp"
58
#include "op_relu.hpp"
59
#include "op_pool.hpp"
60
#include "op_prior_box.hpp"
61
#include "op_permute.hpp"
62
63
#endif // OPENCV_DNN_VKCOM_HPP
64
65