Android 는 OpenCV 를 기반 으로 이미지 탈색 을 실현 합 니 다.
Imgproc.cvtColor(rgb, gray, Imgproc.COLOR_RGB2GRAY)는 이미지 탈색 을 신속하게 실현 할 수 있 으 며 간단 한 계산 을 통 해 3 채널 이미 지 를 단일 채널 이미지 로 전환 할 수 있 습 니 다.전형 적 인 그 레이스 케 일 변환 공식 은 다음 과 같 습 니 다.
그러나 변 환 된 그림 은 대비 도 를 잃 어 버 려 색상 을 구분 할 수 없 는 문제 가 있 습 니 다.OpenCV 는 그림 의 대비 도 를 최대한 유지 하기 위해 다른 탈색 방법 인 Photo.decolor 를 제공 합 니 다.
의 원리
논문 상세 정보:www.cse.cuhk.edu.hk/~leojia/pro..
논문 PDF:www.computer.org/csdl/pds/ap..
간단하게 R/G/B 선형 조합 을 사용 하 는 것 보다 작 가 는 더욱 복잡 한 여러 가지 의합 을 구 조 했 고 벡터 공간의 기 저 는[r,g,b,rg,rb,gb,r2,g2,b2]이 며 핵심 은 그 레이스 케 일 함 수 를 구 하 는 것 이다.
API
public static void decolor(Mat src, Mat grayscale, Mat color_boost)
4.567917.매개 변수 1:src,8 비트 3 채널 그림 을 입력 하 십시오4.567917.매개 변수 2:grayscale,출력 8 비트 단일 채널 그 레이스 케 일인자 3:colorboost,8 비트 3 채널 그림 출력.대비 도가 강 화 된 그림 입 니 다조작 하 다.
/**
*
* author: yidong
* 2020/12/5
*/
class DecolorActivity : AppCompatActivity() {
private val mBinding: ActivityDecolorBinding by lazy {
ActivityDecolorBinding.inflate(layoutInflater)
}
private val mList = mutableListOf<ImageTextObject>()
private lateinit var mAdapter: ImageTextAdapter
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(mBinding.root)
mAdapter = ImageTextAdapter(this, mList)
mBinding.container.adapter = mAdapter
val bgr = Utils.loadResource(this, R.drawable.ceil)
val rgb = Mat()
Imgproc.cvtColor(bgr, rgb, Imgproc.COLOR_BGR2RGB)
val gray = Mat()
val dst = Mat()
val boost = Mat()
mBinding.isLoading = true
GlobalScope.launch(Dispatchers.IO) {
Imgproc.cvtColor(rgb, gray, Imgproc.COLOR_RGB2GRAY)
Photo.decolor(rgb, dst, boost)
launch(Dispatchers.Main) {
mList.add(ImageTextObject(rgb, " "))
mList.add(ImageTextObject(gray, "RGB2GRAY"))
mList.add(ImageTextObject(dst, "DeColor"))
mList.add(ImageTextObject(boost, "ColorBoosting"))
mAdapter.notifyItemRangeInserted(0, 4)
mBinding.isLoading = false
}
}
}
}
효과.각각 decolor 와 RGB2GRAY 로 구현 되 는 탈색 효과 도 는 대비 도와 색상 보존 에 있어 서 효과 차이 가 크다.
소스 코드
github.com/onlyloveyd/…
이상 은 안 드 로 이 드 가 OpenCV 를 기반 으로 이미지 탈색 을 실현 하 는 상세 한 내용 입 니 다.안 드 로 이 드 OpenCV 이미지 탈색 에 관 한 자 료 는 다른 관련 글 을 주목 하 세 요!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Bitrise에서 배포 어플리케이션 설정 테스트하기이 글은 Bitrise 광고 달력의 23일째 글입니다. 자체 또는 당사 등에서 Bitrise 구축 서비스를 사용합니다. 그나저나 며칠 전 Bitrise User Group Meetup #3에서 아래 슬라이드를 발표했...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.