정확히 원하시는 바를 하시려면 Custom view나 외부 라이브러리 layout(PercentRelativeLayout, ConstraintLayout)을 사용해야합니다.
다만 약간의 꼼수로 기본 ImageView만으로 유사한 효과를 만들수는 있습니다.
src에 지정되는 image를 원하는 비율의 크기로 준비하고,
adjustViewBounds, centerCrop 효과를 주면 유사하게는 동작합니다.
<ImageView
android:layout_width="match_parent or 100dp"
android:layout_height="wrap_content"
android:scaleType="centerCrop"
android:adjustViewBounds="true"
android:src="@drawable/test_image"
/>