Commit 3676ea7d authored by 王芳良's avatar 王芳良

init

parents
Pipeline #874 canceled with stages
build/
bin/
.vscode/
.VSCodeCounter/
*.DS_Store
*.user
*.autosave
*.o
*.doc#
Library/
cmake_minimum_required(VERSION 3.16)
PROJECT (Ellipse)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O0 -g")
find_package(VTK REQUIRED)
include(${VTK_USE_FILE})
# INCLUDE_DIRECTORIES(${VTK_USE_FILE})
find_package(OpenCV REQUIRED)
message(STATUS "OpenCV library status:")
message(STATUS " version: ${OpenCV_VERSION}")
message(STATUS " libraries: ${OpenCV_LIBS}")
message(STATUS " include path: ${OpenCV_INCLUDE_DIRS}")
link_directories(
${QT_LIBRARY_DIR})
find_package(Qt5Core REQUIRED)
# 2. 此处设置为自己的cpp文件,直接添加即可
SET(SRC_FILES
main.cpp
myHough.cpp
)
set(HEAD_FILES
myHough.h
)
add_executable(Ellipse ${SRC_FILES} ${HEAD_FILES})
target_link_libraries(Ellipse ${OpenCV_LIBS} ${VTK_LIBRARIES} Qt5::Core)
SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin)
### 使用方法:
1.在本地bin文件夹下放置含有dcm文件的文件夹foldName
2.编译
mkdir build
cd build
cmake ..
make
3.执行,检测结果保存在Result文件夹内
cd ../bin
mkdir Result
./Ellipse foldName
### 改进措施
1.先后高斯滤波(去除噪声)、双边滤波(保边去噪)的图像预处理
2.修改圆检测最大圆半径为40(某些图像无法检测到大圆)
3.修改圆检测的源码,将HoughCircleEstimateRadiusInvoker函数中的accThreshold传入参数改为原先的一半:
效果:累加器->潜在圆心:仍使用accThreshold确保数量可控
潜在圆心->计算半径后的圆心:使用accThreshold/2,防止某些小圆无法被识别
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment