Skip to content

Commit

Permalink
Merge pull request #1 from JuliaImages/ash/base
Browse files Browse the repository at this point in the history
Need the benchmarks now
  • Loading branch information
ashwanirathee authored May 3, 2023
2 parents 67c5735 + 2b5d541 commit 2c4bf62
Show file tree
Hide file tree
Showing 17 changed files with 1,054 additions and 2 deletions.
16 changes: 16 additions & 0 deletions .github/workflows/CompatHelper.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
name: CompatHelper
on:
schedule:
- cron: 0 0 * * *
workflow_dispatch:
jobs:
CompatHelper:
runs-on: ubuntu-latest
steps:
- name: Pkg.add("CompatHelper")
run: julia -e 'using Pkg; Pkg.add("CompatHelper")'
- name: CompatHelper.main()
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
COMPATHELPER_PRIV: ${{ secrets.DOCUMENTER_KEY }}
run: julia -e 'using CompatHelper; CompatHelper.main()'
15 changes: 15 additions & 0 deletions .github/workflows/TagBot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
name: TagBot
on:
issue_comment:
types:
- created
workflow_dispatch:
jobs:
TagBot:
if: github.event_name == 'workflow_dispatch' || github.actor == 'JuliaTagBot'
runs-on: ubuntu-latest
steps:
- uses: JuliaRegistries/TagBot@v1
with:
token: ${{ secrets.GITHUB_TOKEN }}
ssh: ${{ secrets.DOCUMENTER_KEY }}
68 changes: 68 additions & 0 deletions .github/workflows/UnitTest.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
name: CI
on:
push:
branches:
- master
tags: '*'
pull_request:
concurrency:
# Skip intermediate builds: always.
# Cancel intermediate builds: only if it is a pull request build.
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ startsWith(github.ref, 'refs/pull/') }}
jobs:
test:
name: Julia ${{ matrix.version }} - ${{ matrix.os }} - ${{ matrix.arch }} - ${{ github.event_name }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
version:
- '1.6'
- '1'
- 'nightly'
os:
- ubuntu-latest
arch:
- x64
include:
- os: windows-latest
version: '1'
arch: x64
- os: macOS-latest
version: '1'
arch: x64
- os: ubuntu-latest
version: '1'
arch: x86

steps:
- uses: actions/checkout@v2
- uses: julia-actions/setup-julia@v1
with:
version: ${{ matrix.version }}
arch: ${{ matrix.arch }}
- uses: julia-actions/cache@v1
- uses: julia-actions/julia-buildpkg@v1
- uses: julia-actions/julia-runtest@v1
- uses: julia-actions/julia-processcoverage@v1
- uses: codecov/codecov-action@v2
with:
files: lcov.info
multithreads:
name: Julia (threads) 1 - ubuntu-latest - x64 - ${{ github.event_name }}
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: julia-actions/setup-julia@v1
with:
version: '1'
arch: 'x64'
- uses: julia-actions/cache@v1
- uses: julia-actions/julia-buildpkg@v1
- name: run test
run: julia --project --code-coverage -t4 -e 'using Pkg; Pkg.test()'
- uses: julia-actions/julia-processcoverage@v1
- uses: codecov/codecov-action@v2
with:
files: lcov.info
28 changes: 28 additions & 0 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
name: docs
on:
- push
- pull_request
jobs:
docs:
name: Documentation
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: julia-actions/setup-julia@v1
with:
version: '1'
- run: |
julia --project=docs -e '
using Pkg
Pkg.develop(PackageSpec(path=pwd()))
Pkg.instantiate()'
- run: |
julia --project=docs -e '
using Documenter: DocMeta, doctest
using ImageCorners
DocMeta.setdocmeta!(ImageCorners, :DocTestSetup, :(using ImageCorners); recursive=true)
doctest(ImageCorners)'
- run: julia --project=docs docs/make.jl
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
DOCUMENTER_KEY: ${{ secrets.DOCUMENTER_KEY }}
19 changes: 19 additions & 0 deletions Project.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,22 @@ name = "ImageCorners"
uuid = "89d5987c-236e-4e32-acd0-25bd6bd87b70"
authors = "JuliaImages Team"
version = "0.1.0"

[deps]
ColorTypes = "3da002f7-5984-5a60-b8a6-cbb66c0b333f"
ColorVectorSpace = "c3611d14-8923-5661-9e6a-0046d554d3a4"
ImageCore = "a09fc81d-aa75-5fe9-8630-4744c3626534"
ImageFiltering = "6a3955dd-da59-5b1f-98d4-e7296123deb5"
PrecompileTools = "aea7be01-6a6a-4083-8856-8a6e6704d82a"
StaticArrays = "90137ffa-7385-5640-81b9-e52037218182"
StatsBase = "2913bbd2-ae8a-5f71-8c99-4fb6c76f3a91"

[compat]
ColorTypes = "0.11"
ColorVectorSpace = "0.9"
ImageCore = "0.9"
ImageFiltering = "0.7"
PrecompileTools = "1"
StaticArrays = "0.8, 0.9, 0.10, 0.11, 0.12, 1.0"
StatsBase = "0.24, 0.25, 0.26, 0.27, 0.28, 0.29, 0.30"
julia = "1.6"
28 changes: 27 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1 +1,27 @@
# ImageCorners.jl
# ImageCorners.jl

ImageCorners.jl provides image corner related algorithms in Julia.

### Supported Algorithms
- Harris
- Shi-Tomasi
- Kitchen and Rosenfeld
- FAST Corners

These Algorithms can be accessed using the following methods:
```julia
julia> using ImageCorners, TestImages

julia> img = testimage("mandrill");

# corner detection using harris method
julia> corners = imcorner(img; method = harris);

# threshold can be specified for the thresolding the corner pixels
julia> corners = imcorner(img, 0.001; method = harris);

julia> corners = imcorner(img, Percentile(95); method = harris);

# for corner detection to subpixel precision imgcorner_subpixel can be used
julia> corners = imcorner_subpixel(img; method = harris);
```
3 changes: 3 additions & 0 deletions docs/Project.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[deps]
Documenter = "e30172f5-a6a5-5a46-863b-614d45cd2de4"
ImageCorners = "89d5987c-236e-4e32-acd0-25bd6bd87b70"
14 changes: 14 additions & 0 deletions docs/make.jl
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
push!(LOAD_PATH,"../src/")
using ImageCorners
using Documenter

DocMeta.setdocmeta!(ImageCorners, :DocTestSetup, :(using ImageCorners); recursive=true)

makedocs(;
modules=[ImageCorners],
sitename="ImageCorners.jl",
)

deploydocs(;
repo="github.com/JuliaImages/ImageCorners.jl",
)
35 changes: 35 additions & 0 deletions docs/src/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
```@meta
CurrentModule = ImageCorners
```

# ImageCorners.jl

ImageCorners.jl provides image corner related algorithms in Julia.

### Supported Algorithms
- Harris
- Shi-Tomasi
- Kitchen and Rosenfeld
- FAST Corners

These Algorithms can be accessed using the following methods:
```julia
julia> using ImageCorners, TestImages

julia> img = testimage("mandrill");

# corner detection using harris method
julia> corners = imcorner(img; method = harris);

# threshold can be specified for the thresolding the corner pixels
julia> corners = imcorner(img, 0.001; method = harris);

julia> corners = imcorner(img, Percentile(95); method = harris);

# for corner detection to subpixel precision imgcorner_subpixel can be used
julia> corners = imcorner_subpixel(img; method = harris);
```

```@autodocs
Modules = [ImageCorners]
```
26 changes: 25 additions & 1 deletion src/ImageCorners.jl
Original file line number Diff line number Diff line change
@@ -1,5 +1,29 @@
module ImageCorners

greet() = print("Hello World!")
using ColorTypes
using ColorVectorSpace
using ImageCore: NumberLike
using ImageFiltering
using PrecompileTools
using StaticArrays
using StatsBase

include("utils.jl")
include("cornerapi.jl")
include("precompile.jl")

export
imcorner,
imcorner_subpixel,
corner2subpixel,
harris,
shi_tomasi,
kitchen_rosenfeld,
fastcorners,
meancovs,
gammacovs,

Percentile,
HomogeneousPoint

end # module ImageCorners
Loading

0 comments on commit 2c4bf62

Please sign in to comment.